From 0e5bc9c47a5bdf08b38d60eea761d56d422b585a Mon Sep 17 00:00:00 2001 From: rozmansi Date: Mon, 23 Sep 2024 12:55:52 +0000 Subject: [PATCH] deploy: 8cca09a567dda04181d25b13413ddb3113dee402 --- _c_o_m_8h_source.html | 35 +- _common_8h_source.html | 487 +++++----- _cred_8h_source.html | 44 +- _crypt_8h_source.html | 246 ++--- _e_a_p_8h_source.html | 368 +++---- _e_t_w_8h_source.html | 585 +++++------ _g_d_i_8h_source.html | 86 +- _m_s_i_8h_source.html | 19 +- _s_d_d_l_8h_source.html | 58 +- _sec_8h_source.html | 528 +++++----- _setup_a_p_i_8h_source.html | 56 +- _shell_8h_source.html | 19 +- _w_l_a_n_8h_source.html | 54 +- _win_8h_source.html | 456 ++++----- _win_h_t_t_p_8h_source.html | 30 +- _win_sock2_8h_source.html | 65 +- _win_trust_8h_source.html | 44 +- annotated.html | 22 +- classes.html | 22 +- classwinstd_1_1actctx__activator-members.html | 22 +- classwinstd_1_1actctx__activator.html | 34 +- classwinstd_1_1addrinfo-members.html | 24 +- classwinstd_1_1addrinfo.html | 85 +- ...winstd_1_1basic__string__guid-members.html | 22 +- classwinstd_1_1basic__string__guid.html | 34 +- ...swinstd_1_1basic__string__msg-members.html | 22 +- classwinstd_1_1basic__string__msg.html | 110 ++- ...nstd_1_1basic__string__printf-members.html | 22 +- classwinstd_1_1basic__string__printf.html | 54 +- classwinstd_1_1bstr-members.html | 64 +- classwinstd_1_1bstr.html | 136 +-- ...instd_1_1cert__chain__context-members.html | 64 +- classwinstd_1_1cert__chain__context.html | 122 ++- classwinstd_1_1cert__context-members.html | 64 +- classwinstd_1_1cert__context.html | 158 +-- classwinstd_1_1cert__store-members.html | 24 +- classwinstd_1_1cert__store.html | 85 +- classwinstd_1_1clipboard__opener-members.html | 22 +- classwinstd_1_1clipboard__opener.html | 32 +- classwinstd_1_1com__initializer-members.html | 22 +- classwinstd_1_1com__initializer.html | 38 +- classwinstd_1_1com__obj-members.html | 26 +- classwinstd_1_1com__obj.html | 173 ++-- ...winstd_1_1com__runtime__error-members.html | 24 +- classwinstd_1_1com__runtime__error.html | 50 +- ...std_1_1console__ctrl__handler-members.html | 22 +- classwinstd_1_1console__ctrl__handler.html | 36 +- classwinstd_1_1critical__section-members.html | 22 +- classwinstd_1_1critical__section.html | 40 +- classwinstd_1_1crypt__hash-members.html | 64 +- classwinstd_1_1crypt__hash.html | 122 ++- classwinstd_1_1crypt__key-members.html | 64 +- classwinstd_1_1crypt__key.html | 130 +-- classwinstd_1_1crypt__prov-members.html | 24 +- classwinstd_1_1crypt__prov.html | 85 +- classwinstd_1_1data__blob-members.html | 22 +- classwinstd_1_1data__blob.html | 42 +- classwinstd_1_1dc-members.html | 24 +- classwinstd_1_1dc.html | 85 +- classwinstd_1_1dc__selector-members.html | 22 +- classwinstd_1_1dc__selector.html | 44 +- classwinstd_1_1dplhandle-members.html | 24 +- classwinstd_1_1dplhandle.html | 152 +-- classwinstd_1_1eap__attr-members.html | 22 +- classwinstd_1_1eap__attr.html | 42 +- ...d_1_1eap__method__info__array-members.html | 22 +- classwinstd_1_1eap__method__info__array.html | 28 +- classwinstd_1_1eap__method__prop-members.html | 22 +- classwinstd_1_1eap__method__prop.html | 40 +- classwinstd_1_1eap__packet-members.html | 64 +- classwinstd_1_1eap__packet.html | 130 +-- ...winstd_1_1eap__runtime__error-members.html | 24 +- classwinstd_1_1eap__runtime__error.html | 90 +- classwinstd_1_1event__data-members.html | 22 +- classwinstd_1_1event__data.html | 72 +- classwinstd_1_1event__fn__auto-members.html | 22 +- classwinstd_1_1event__fn__auto.html | 34 +- ...instd_1_1event__fn__auto__ret-members.html | 22 +- classwinstd_1_1event__fn__auto__ret.html | 38 +- classwinstd_1_1event__log-members.html | 24 +- classwinstd_1_1event__log.html | 85 +- classwinstd_1_1event__provider-members.html | 24 +- classwinstd_1_1event__provider.html | 167 ++-- classwinstd_1_1event__rec-members.html | 22 +- classwinstd_1_1event__rec.html | 74 +- classwinstd_1_1event__session-members.html | 30 +- classwinstd_1_1event__session.html | 157 +-- classwinstd_1_1event__trace-members.html | 24 +- classwinstd_1_1event__trace.html | 85 +- ...nstd_1_1event__trace__enabler-members.html | 22 +- classwinstd_1_1event__trace__enabler.html | 86 +- classwinstd_1_1find__file-members.html | 24 +- classwinstd_1_1find__file.html | 85 +- classwinstd_1_1gdi__handle-members.html | 24 +- classwinstd_1_1gdi__handle.html | 91 +- ...winstd_1_1globalmem__accessor-members.html | 22 +- classwinstd_1_1globalmem__accessor.html | 46 +- classwinstd_1_1handle-members.html | 24 +- classwinstd_1_1handle.html | 198 ++-- classwinstd_1_1handle.png | Bin 6766 -> 1514 bytes classwinstd_1_1heap-members.html | 24 +- classwinstd_1_1heap.html | 91 +- classwinstd_1_1heap__allocator-members.html | 36 +- classwinstd_1_1heap__allocator.html | 150 +-- classwinstd_1_1http-members.html | 24 +- classwinstd_1_1http.html | 85 +- classwinstd_1_1icon-members.html | 24 +- classwinstd_1_1icon.html | 85 +- classwinstd_1_1impersonator-members.html | 22 +- classwinstd_1_1impersonator.html | 34 +- ...swinstd_1_1last__error__saver-members.html | 22 +- classwinstd_1_1last__error__saver.html | 30 +- classwinstd_1_1library-members.html | 24 +- classwinstd_1_1library.html | 85 +- classwinstd_1_1mutex__locker-members.html | 22 +- classwinstd_1_1mutex__locker.html | 36 +- ...winstd_1_1num__runtime__error-members.html | 24 +- classwinstd_1_1num__runtime__error.html | 56 +- ...instd_1_1process__information-members.html | 22 +- classwinstd_1_1process__information.html | 24 +- classwinstd_1_1ref__unique__ptr-members.html | 22 +- classwinstd_1_1ref__unique__ptr.html | 56 +- ...01___ty_0f_0e_00_01___dx_01_4-members.html | 22 +- ...__ptr_3_01___ty_0f_0e_00_01___dx_01_4.html | 60 +- classwinstd_1_1reg__key-members.html | 24 +- classwinstd_1_1reg__key.html | 91 +- classwinstd_1_1safearray-members.html | 64 +- classwinstd_1_1safearray.html | 122 ++- ...winstd_1_1safearray__accessor-members.html | 22 +- classwinstd_1_1safearray__accessor.html | 46 +- ...nstd_1_1sanitizing__allocator-members.html | 24 +- classwinstd_1_1sanitizing__allocator.html | 42 +- classwinstd_1_1sanitizing__blob-members.html | 22 +- classwinstd_1_1sanitizing__blob.html | 26 +- classwinstd_1_1sc__handle-members.html | 24 +- classwinstd_1_1sc__handle.html | 85 +- classwinstd_1_1sec__buffer__desc-members.html | 22 +- classwinstd_1_1sec__buffer__desc.html | 30 +- classwinstd_1_1sec__context-members.html | 28 +- classwinstd_1_1sec__context.html | 125 +-- classwinstd_1_1sec__credentials-members.html | 28 +- classwinstd_1_1sec__credentials.html | 115 ++- ...winstd_1_1sec__runtime__error-members.html | 24 +- classwinstd_1_1sec__runtime__error.html | 54 +- ...instd_1_1security__attributes-members.html | 22 +- classwinstd_1_1security__attributes.html | 28 +- classwinstd_1_1security__id-members.html | 24 +- classwinstd_1_1security__id.html | 85 +- ..._1_1setup__device__info__list-members.html | 24 +- classwinstd_1_1setup__device__info__list.html | 85 +- ...__driver__info__list__builder-members.html | 22 +- ...1_1setup__driver__info__list__builder.html | 42 +- classwinstd_1_1string__guid-members.html | 22 +- classwinstd_1_1string__guid.html | 28 +- ...instd_1_1system__impersonator-members.html | 22 +- classwinstd_1_1system__impersonator.html | 32 +- ...swinstd_1_1user__impersonator-members.html | 22 +- classwinstd_1_1user__impersonator.html | 34 +- classwinstd_1_1variant-members.html | 22 +- classwinstd_1_1variant.html | 174 ++-- classwinstd_1_1vmemory-members.html | 30 +- classwinstd_1_1vmemory.html | 121 ++- classwinstd_1_1waddrinfo-members.html | 24 +- classwinstd_1_1waddrinfo.html | 85 +- classwinstd_1_1win__handle-members.html | 24 +- classwinstd_1_1win__handle.html | 91 +- ...winstd_1_1win__runtime__error-members.html | 24 +- classwinstd_1_1win__runtime__error.html | 70 +- classwinstd_1_1window__dc-members.html | 28 +- classwinstd_1_1window__dc.html | 95 +- classwinstd_1_1wintrust-members.html | 22 +- classwinstd_1_1wintrust.html | 26 +- classwinstd_1_1wlan__handle-members.html | 24 +- classwinstd_1_1wlan__handle.html | 85 +- ...winstd_1_1ws2__runtime__error-members.html | 24 +- classwinstd_1_1ws2__runtime__error.html | 70 +- classwinstd_1_1wstring__guid-members.html | 22 +- classwinstd_1_1wstring__guid.html | 28 +- dir_4be4f7b278e009bf0f1906cf31fb73bd.html | 22 +- dir_6f50bb204833d887b928571856c82fbe.html | 22 +- dir_d44c64559bbebec7f509842c48db8b23.html | 22 +- doxygen.css | 54 +- doxygen_crawl.html | 905 +++++++++++++++++- dynsections.js | 4 + files.html | 22 +- functions.html | 26 +- functions_a.html | 22 +- functions_b.html | 22 +- functions_c.html | 26 +- functions_d.html | 24 +- functions_e.html | 30 +- functions_f.html | 22 +- functions_func.html | 22 +- functions_func_b.html | 22 +- functions_func_c.html | 24 +- functions_func_d.html | 22 +- functions_func_e.html | 28 +- functions_func_f.html | 22 +- functions_func_g.html | 22 +- functions_func_h.html | 22 +- functions_func_i.html | 22 +- functions_func_l.html | 22 +- functions_func_m.html | 22 +- functions_func_n.html | 22 +- functions_func_o.html | 26 +- functions_func_p.html | 22 +- functions_func_q.html | 22 +- functions_func_r.html | 22 +- functions_func_s.html | 22 +- functions_func_t.html | 22 +- functions_func_u.html | 22 +- functions_func_v.html | 24 +- functions_func_w.html | 24 +- functions_func_~.html | 22 +- functions_g.html | 22 +- functions_h.html | 24 +- functions_i.html | 22 +- functions_l.html | 22 +- functions_m.html | 22 +- functions_n.html | 22 +- functions_o.html | 28 +- functions_p.html | 24 +- functions_q.html | 22 +- functions_r.html | 24 +- functions_s.html | 24 +- functions_t.html | 22 +- functions_type.html | 46 +- functions_u.html | 22 +- functions_v.html | 24 +- functions_vars.html | 22 +- functions_w.html | 24 +- functions_~.html | 22 +- group___setup_a_p_i.html | 22 +- group___win_sock2_a_p_i.html | 42 +- group___win_std_c_o_m.html | 34 +- group___win_std_c_o_m_helpers.html | 114 ++- group___win_std_cred_a_p_i.html | 80 +- group___win_std_crypto_a_p_i.html | 170 ++-- group___win_std_e_a_p_a_p_i.html | 38 +- group___win_std_e_t_w_a_p_i.html | 44 +- group___win_std_exceptions.html | 38 +- group___win_std_gdi_a_p_i.html | 22 +- group___win_std_general.html | 150 ++- group___win_std_m_s_i_a_p_i.html | 96 +- group___win_std_mem_sanitize.html | 32 +- group___win_std_s_d_d_l.html | 40 +- group___win_std_security_a_p_i.html | 22 +- group___win_std_shell_w_a_p_i.html | 38 +- group___win_std_str_format.html | 184 ++-- group___win_std_sys_handles.html | 36 +- group___win_std_w_l_a_n_a_p_i.html | 32 +- group___win_std_win_a_p_i.html | 394 ++++---- group___win_std_win_h_t_t_p.html | 30 +- group___win_trust_a_p_i.html | 22 +- hierarchy.html | 70 +- index.html | 31 +- jquery.js | 190 +++- md__s_e_c_u_r_i_t_y.html | 24 +- menu.js | 4 +- navtree.css | 149 +++ pages.html | 22 +- pch_8h_source.html | 19 +- resize.js | 147 +++ search/all_0.js | 4 +- search/all_10.js | 2 +- search/all_11.js | 2 +- search/all_14.js | 2 +- search/all_3.js | 4 +- search/all_4.js | 2 +- search/all_5.js | 2 +- search/all_8.js | 2 +- search/all_d.js | 2 +- search/all_e.js | 2 +- search/typedefs_0.js | 4 +- search/typedefs_1.js | 4 +- search/typedefs_2.js | 2 +- search/typedefs_3.js | 2 +- search/typedefs_5.js | 2 +- search/typedefs_7.js | 2 +- search/typedefs_8.js | 2 +- search/typedefs_9.js | 2 +- search/typedefs_a.js | 2 +- search/typedefs_c.js | 2 +- ..._1_1_co_task_mem_free__delete-members.html | 22 +- ...ctwinstd_1_1_co_task_mem_free__delete.html | 34 +- ...twinstd_1_1_cred_free__delete-members.html | 24 +- structwinstd_1_1_cred_free__delete.html | 44 +- ...ree__delete_3_01___ty_0f_0e_4-members.html | 24 +- ...1_cred_free__delete_3_01___ty_0f_0e_4.html | 52 +- ...t_peer_free_eap_error__delete-members.html | 22 +- ..._eap_host_peer_free_eap_error__delete.html | 30 +- ...eer_free_error_memory__delete-members.html | 22 +- ...p_host_peer_free_error_memory__delete.html | 30 +- ...host_peer_free_memory__delete-members.html | 22 +- ...1_1_eap_host_peer_free_memory__delete.html | 34 +- ...r_free_runtime_memory__delete-members.html | 22 +- ...host_peer_free_runtime_memory__delete.html | 28 +- ...instd_1_1_global_free__delete-members.html | 22 +- structwinstd_1_1_global_free__delete.html | 28 +- ...winstd_1_1_local_free__delete-members.html | 24 +- structwinstd_1_1_local_free__delete.html | 44 +- ...ree__delete_3_01___ty_0f_0e_4-members.html | 24 +- ..._local_free__delete_3_01___ty_0f_0e_4.html | 48 +- ..._1_unmap_view_of_file__delete-members.html | 22 +- ...winstd_1_1_unmap_view_of_file__delete.html | 24 +- ..._1_1_wlan_free_memory__delete-members.html | 24 +- ...ctwinstd_1_1_wlan_free_memory__delete.html | 38 +- ...ory__delete_3_01___ty_0f_0e_4-members.html | 24 +- ...free_memory__delete_3_01___ty_0f_0e_4.html | 38 +- ..._1_1heap__allocator_1_1rebind-members.html | 24 +- ...ctwinstd_1_1heap__allocator_1_1rebind.html | 34 +- ...nitizing__allocator_1_1rebind-members.html | 24 +- ...td_1_1sanitizing__allocator_1_1rebind.html | 34 +- tabs.css | 2 +- topics.html | 22 +- 315 files changed, 11170 insertions(+), 5753 deletions(-) create mode 100644 navtree.css create mode 100644 resize.js diff --git a/_c_o_m_8h_source.html b/_c_o_m_8h_source.html index b2f9ee8d..99c0b941 100644 --- a/_c_o_m_8h_source.html +++ b/_c_o_m_8h_source.html @@ -3,13 +3,15 @@ - + WinStd: include/WinStd/COM.h Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ +
COM.h
@@ -107,12 +115,12 @@
28 {
29 public:
-
36 com_runtime_error(_In_ error_type num, _In_ const std::string& msg) : num_runtime_error<HRESULT>(num, msg)
+
36 com_runtime_error(_In_ error_type num, _In_ const std::string& msg) : num_runtime_error<HRESULT>(num, msg)
37 {}
38
-
45 com_runtime_error(_In_ error_type num, _In_opt_z_ const char *msg = nullptr) : num_runtime_error<HRESULT>(num, msg)
+
45 com_runtime_error(_In_ error_type num, _In_opt_z_ const char *msg = nullptr) : num_runtime_error<HRESULT>(num, msg)
46 {}
47 };
@@ -285,9 +293,9 @@
267
- +
278 {
-
279 handle_type h_new = SysAllocStringLen(h, SysStringLen(h));
+
279 handle_type h_new = SysAllocStringLen(h, SysStringLen(h));
280 if (h_new != invalid)
281 return h_new;
282 throw std::bad_alloc();
@@ -976,9 +984,9 @@
1068
- +
1079 {
-
1080 handle_type h_new;
+
1080 handle_type h_new;
1081 HRESULT hr = SafeArrayCopy(h, &h_new);
1082 if (SUCCEEDED(hr))
1083 return h_new;
@@ -1484,10 +1492,10 @@
com_runtime_error(error_type num, const char *msg=nullptr)
Constructs an exception.
Definition COM.h:45
Device context wrapper class.
Definition GDI.h:84
Base abstract template class to support object handle keeping for objects that support trivial handle...
Definition Common.h:1287
-
T handle_type
Datatype of the object handle this template class handles.
Definition Common.h:1029
handle_type m_h
Object handle.
Definition Common.h:1276
+
BSTR handle_type
Definition Common.h:1029
Numerical runtime error.
Definition Common.h:1481
-
HRESULT error_type
Error number type.
Definition Common.h:1483
+
HRESULT error_type
Definition Common.h:1483
Context scope automatic SAFEARRAY (un)access.
Definition COM.h:1093
safearray_accessor(SAFEARRAY *psa)
Increments the lock count of an array, and retrieves a pointer to the array data.
Definition COM.h:1103
T HUGEP * data() const noexcept
Return SAFEARRAY data pointer.
Definition COM.h:1123
@@ -1577,7 +1585,8 @@
+ diff --git a/_common_8h_source.html b/_common_8h_source.html index 969cc2d4..2f927e09 100644 --- a/_common_8h_source.html +++ b/_common_8h_source.html @@ -3,13 +3,15 @@ - + WinStd: include/WinStd/Common.h Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ +
Common.h
@@ -339,14 +347,14 @@
353 int cch = ::WideCharToMultiByte(CodePage, dwFlags, lpWideCharStr, cchWideChar, szStackBuffer, _countof(szStackBuffer), lpDefaultChar, lpUsedDefaultChar);
354 if (cch) {
355 // Copy from stack. Be careful not to include zero terminator.
-
356 sMultiByteStr.assign(szStackBuffer, cchWideChar != -1 ? strnlen(szStackBuffer, cch) : (size_t)cch - 1);
+
356 sMultiByteStr.assign(szStackBuffer, cchWideChar != -1 ? strnlen(szStackBuffer, cch) : (size_t)cch - 1);
357 }
358 else if (::GetLastError() == ERROR_INSUFFICIENT_BUFFER) {
359 // Query the required output size. Allocate buffer. Then convert again.
360 cch = ::WideCharToMultiByte(CodePage, dwFlags, lpWideCharStr, cchWideChar, NULL, 0, lpDefaultChar, lpUsedDefaultChar);
361 sMultiByteStr.resize(cch);
362 cch = ::WideCharToMultiByte(CodePage, dwFlags, lpWideCharStr, cchWideChar, &sMultiByteStr[0], cch, lpDefaultChar, lpUsedDefaultChar);
-
363 sMultiByteStr.resize(cchWideChar != -1 ? strnlen(&sMultiByteStr[0], cch) : (size_t)cch - 1);
+
363 sMultiByteStr.resize(cchWideChar != -1 ? strnlen(&sMultiByteStr[0], cch) : (size_t)cch - 1);
364 }
365
366 return cch;
@@ -409,14 +417,14 @@
434 int cch = ::WideCharToMultiByte(CodePage, dwFlags, lpWideCharStr, cchWideChar, szStackBuffer, _countof(szStackBuffer), lpDefaultChar, lpUsedDefaultChar);
435 if (cch) {
436 // Copy from stack. Be careful not to include zero terminator.
-
437 sMultiByteStr.assign(szStackBuffer, cchWideChar != -1 ? strnlen(szStackBuffer, cch) : (size_t)cch - 1);
+
437 sMultiByteStr.assign(szStackBuffer, cchWideChar != -1 ? strnlen(szStackBuffer, cch) : (size_t)cch - 1);
438 }
439 else if (::GetLastError() == ERROR_INSUFFICIENT_BUFFER) {
440 // Query the required output size. Allocate buffer. Then convert again.
441 cch = ::WideCharToMultiByte(CodePage, dwFlags, lpWideCharStr, cchWideChar, NULL, 0, lpDefaultChar, lpUsedDefaultChar);
442 sMultiByteStr.resize(cch);
443 cch = ::WideCharToMultiByte(CodePage, dwFlags, lpWideCharStr, cchWideChar, &sMultiByteStr[0], cch, lpDefaultChar, lpUsedDefaultChar);
-
444 sMultiByteStr.resize(cchWideChar != -1 ? strnlen(&sMultiByteStr[0], cch) : (size_t)cch - 1);
+
444 sMultiByteStr.resize(cchWideChar != -1 ? strnlen(&sMultiByteStr[0], cch) : (size_t)cch - 1);
445 }
446
447 SecureZeroMemory(szStackBuffer, sizeof(szStackBuffer));
@@ -485,14 +493,14 @@
523 int cch = ::MultiByteToWideChar(CodePage, dwFlags, lpMultiByteStr, cbMultiByte, szStackBuffer, _countof(szStackBuffer));
524 if (cch) {
525 // Copy from stack.
-
526 sWideCharStr.assign(szStackBuffer, cbMultiByte != -1 ? wcsnlen(szStackBuffer, cch) : (size_t)cch - 1);
+
526 sWideCharStr.assign(szStackBuffer, cbMultiByte != -1 ? wcsnlen(szStackBuffer, cch) : (size_t)cch - 1);
527 }
528 else if (::GetLastError() == ERROR_INSUFFICIENT_BUFFER) {
529 // Query the required output size. Allocate buffer. Then convert again.
530 cch = ::MultiByteToWideChar(CodePage, dwFlags, lpMultiByteStr, cbMultiByte, NULL, 0);
531 sWideCharStr.resize(cch);
532 cch = ::MultiByteToWideChar(CodePage, dwFlags, lpMultiByteStr, cbMultiByte, &sWideCharStr[0], cch);
-
533 sWideCharStr.resize(cbMultiByte != -1 ? wcsnlen(&sWideCharStr[0], cch) : (size_t)cch - 1);
+
533 sWideCharStr.resize(cbMultiByte != -1 ? wcsnlen(&sWideCharStr[0], cch) : (size_t)cch - 1);
534 }
535
536 return cch;
@@ -555,14 +563,14 @@
604 int cch = ::MultiByteToWideChar(CodePage, dwFlags, lpMultiByteStr, cbMultiByte, szStackBuffer, _countof(szStackBuffer));
605 if (cch) {
606 // Copy from stack.
-
607 sWideCharStr.assign(szStackBuffer, cbMultiByte != -1 ? wcsnlen(szStackBuffer, cch) : (size_t)cch - 1);
+
607 sWideCharStr.assign(szStackBuffer, cbMultiByte != -1 ? wcsnlen(szStackBuffer, cch) : (size_t)cch - 1);
608 }
609 else if (::GetLastError() == ERROR_INSUFFICIENT_BUFFER) {
610 // Query the required output size. Allocate buffer. Then convert again.
611 cch = ::MultiByteToWideChar(CodePage, dwFlags, lpMultiByteStr, cbMultiByte, NULL, 0);
612 sWideCharStr.resize(cch);
613 cch = ::MultiByteToWideChar(CodePage, dwFlags, lpMultiByteStr, cbMultiByte, &sWideCharStr[0], cch);
-
614 sWideCharStr.resize(cbMultiByte != -1 ? wcsnlen(&sWideCharStr[0], cch) : (size_t)cch - 1);
+
614 sWideCharStr.resize(cbMultiByte != -1 ? wcsnlen(&sWideCharStr[0], cch) : (size_t)cch - 1);
615 }
616
617 SecureZeroMemory(szStackBuffer, sizeof(szStackBuffer));
@@ -661,7 +669,7 @@
735 {
- +
737
742
@@ -680,7 +688,7 @@
763 struct LocalFree_delete<_Ty[]>
764 {
- +
766
770 LocalFree_delete() noexcept {}
771
@@ -805,28 +813,28 @@
929 ref_unique_ptr<_Ty, _Dx> get_ptr(_Inout_ std::unique_ptr<_Ty, _Dx> &owner) noexcept
930 {
- +
931 return ref_unique_ptr<_Ty, _Dx>(owner);
932 }
933
938 template<class _Ty, class _Dx>
- +
939 class ref_unique_ptr<_Ty[], _Dx>
940 {
941 public:
-
947 ref_unique_ptr(_Inout_ std::unique_ptr<_Ty[], _Dx> &owner) noexcept :
-
948 m_own(owner),
-
949 m_ptr(owner.release())
+
947 ref_unique_ptr(_Inout_ std::unique_ptr<_Ty[], _Dx> &owner) noexcept :
+
948 m_own(owner),
+
949 m_ptr(owner.release())
950 {}
951
- +
957 ref_unique_ptr(_Inout_ ref_unique_ptr<_Ty[], _Dx> &&other) :
958 m_own(other.m_own),
959 m_ptr(other.m_ptr)
960 {
-
961 other.m_ptr = nullptr;
+
961 other.m_ptr = nullptr;
962 }
963
@@ -839,14 +847,14 @@
972
-
978 operator typename _Ty**() noexcept
+
978 operator typename _Ty**() noexcept
979 {
980 return &m_ptr;
981 }
982
-
988 operator typename _Ty*&()
+
988 operator typename _Ty*&()
989 {
990 return m_ptr;
991 }
@@ -854,15 +862,15 @@
992
993 protected:
994 std::unique_ptr<_Ty[], _Dx> &m_own;
- +
995 _Ty *m_ptr;
996 };
997
1006 template<class _Ty, class _Dx>
- +
1007 ref_unique_ptr<_Ty[], _Dx> get_ptr(_Inout_ std::unique_ptr<_Ty[], _Dx>& owner) noexcept
1008 {
- +
1009 return ref_unique_ptr<_Ty[], _Dx>(owner);
1010 }
1011
@@ -873,85 +881,85 @@
1024 {
1025 public:
- +
1029 typedef T handle_type;
1030
-
1034 static const T invalid;
+
1034 static const T invalid;
1035
- +
1039 handle() noexcept : m_h(invalid)
1040 {}
1041
- +
1047 handle(_In_opt_ handle_type h) noexcept : m_h(h)
1048 {}
1049
- +
1056 {
1057 // Transfer handle.
-
1058 m_h = h.m_h;
-
1059 h.m_h = invalid;
+
1058 m_h = h.m_h;
+
1059 h.m_h = invalid;
1060 }
1061
1062 private:
1063 // This class is noncopyable.
-
1064 handle(_In_ const handle<handle_type, INVAL> &h) noexcept {};
-
1065 handle<handle_type, INVAL>& operator=(_In_ const handle<handle_type, INVAL> &h) noexcept {};
+
1064 handle(_In_ const handle<handle_type, INVAL> &h) noexcept {};
+
1065 handle<handle_type, INVAL>& operator=(_In_ const handle<handle_type, INVAL> &h) noexcept {};
1066
1067 public:
- +
1074 {
-
1075 attach(h);
+
1075 attach(h);
1076 return *this;
1077 }
1078
1084 #pragma warning(suppress: 26432) // Move constructor is also present, but not detected by code analysis somehow.
- +
1086 {
-
1087 if (this != std::addressof(h)) {
+
1087 if (this != std::addressof(h)) {
1088 // Transfer handle.
1089 if (m_h != invalid)
1090 free_internal();
-
1091 m_h = h.m_h;
-
1092 h.m_h = invalid;
+
1091 m_h = h.m_h;
+
1092 h.m_h = invalid;
1093 }
1094 return *this;
1095 }
1096
-
1102 operator handle_type() const
+
1102 operator handle_type() const
1103 {
1104 return m_h;
1105 }
1106
- +
1113 {
-
1114 assert(m_h != invalid);
+
1114 assert(m_h != invalid);
1115 return *m_h;
1116 }
1117
- +
1123 {
-
1124 assert(m_h == invalid);
+
1124 assert(m_h == invalid);
1125 return &m_h;
1126 }
1127
- +
1134 {
-
1135 assert(m_h != invalid);
+
1135 assert(m_h != invalid);
1136 return m_h;
1137 }
@@ -964,62 +972,62 @@
1153
- +
1162 bool operator<(_In_opt_ handle_type h) const
1163 {
-
1164 return m_h < h;
+
1164 return m_h < h;
1165 }
1166
- +
1175 bool operator<=(_In_opt_ handle_type h) const
1176 {
-
1177 return !operator>(h);
+
1177 return !operator>(h);
1178 }
1179
- +
1188 bool operator>=(_In_opt_ handle_type h) const
1189 {
-
1190 return !operator<(h);
+
1190 return !operator<(h);
1191 }
1192
- +
1201 bool operator>(_In_opt_ handle_type h) const
1202 {
-
1203 return h < m_h;
+
1203 return h < m_h;
1204 }
1205
- +
1214 bool operator!=(_In_opt_ handle_type h) const
1215 {
-
1216 return !operator==(h);
+
1216 return !operator==(h);
1217 }
1218
- +
1227 bool operator==(_In_opt_ handle_type h) const
1228 {
-
1229 return m_h == h;
+
1229 return m_h == h;
1230 }
1231
- +
1239 void attach(_In_opt_ handle_type h) noexcept
1240 {
1241 if (m_h != invalid)
1242 free_internal();
-
1243 m_h = h;
+
1243 m_h = h;
1244 }
1245
- +
1252 {
-
1253 handle_type h = m_h;
+
1253 handle_type h = m_h;
1254 m_h = invalid;
-
1255 return h;
+
1255 return h;
1256 }
1257
@@ -1034,56 +1042,56 @@
1268
1269 protected:
-
1273 virtual void free_internal() noexcept = 0;
+
1273 virtual void free_internal() noexcept = 0;
1274
-
1275 protected:
- +
1275 protected:
+
1277 };
1278
-
1279 template <class T, const T INVAL>
-
1280 const T handle<T, INVAL>::invalid = INVAL;
+
1279 template <class T, const T INVAL>
+
1280 const T handle<T, INVAL>::invalid = INVAL;
1281
-
1285 template <class T, T INVAL>
+
1285 template <class T, T INVAL>
- +
1286 class dplhandle : public handle<T, INVAL>
1287 {
1288 public:
- +
1292 dplhandle() noexcept
1293 {}
1294
1302
- +
1308 dplhandle<handle_type, INVAL>(_In_ const dplhandle<handle_type, INVAL> &h) : handle<handle_type, INVAL>(duplicate_internal(h.m_h))
1309 {}
1310
-
1316 dplhandle<handle_type, INVAL>(_Inout_ dplhandle<handle_type, INVAL> &&h) noexcept : handle<handle_type, INVAL>(std::move(h))
+
1316 dplhandle<handle_type, INVAL>(_Inout_ dplhandle<handle_type, INVAL> &&h) noexcept : handle<handle_type, INVAL>(std::move(h))
1317 {}
1318
1329
- +
1336 {
-
1337 if (this != std::addressof(h)) {
-
1338 if (h.m_h != invalid) {
-
1339 handle_type h_new = duplicate_internal(h.m_h);
+
1337 if (this != std::addressof(h)) {
+
1338 if (h.m_h != invalid) {
+
1339 handle_type h_new = duplicate_internal(h.m_h);
1340
1341 if (m_h != invalid)
1342 free_internal();
1343
-
1344 m_h = h_new;
+
1344 m_h = h_new;
1345 } else {
1346 if (m_h != invalid)
1347 free_internal();
@@ -1097,89 +1105,89 @@
1354
1360 #pragma warning(disable: 26432) // Move constructor is also present, but not detected by code analysis somehow.
1366
- +
1373 {
1374 return m_h != invalid ? duplicate_internal(m_h) : invalid;
1375 }
1376
- +
1383 {
1384 if (m_h != invalid)
1385 free_internal();
1386
-
1387 m_h = h != invalid ? duplicate_internal(h) : invalid;
+
1387 m_h = h != invalid ? duplicate_internal(h) : invalid;
1388 }
1389
1390 protected:
- +
1399 virtual handle_type duplicate_internal(_In_ handle_type h) const = 0;
1400 };
1401
1403
1406
- +
1416 inline std::string load_msg_from_res(_In_opt_ HMODULE hModule, _In_ UINT nId, _In_ WORD wLanguage)
1417 {
-
1418 std::string sResult;
- -
1420 if (hFoundRes) {
- -
1422 if (dwSize) {
- -
1424 if (hLoadedRes) {
-
1425 LPCWSTR szMessage = reinterpret_cast<LPCWSTR>(LockResource(hLoadedRes));
-
1426 if (szMessage) {
- -
1428 return sResult;
+
1418 std::string sResult;
+
1419 HRSRC hFoundRes = FindResourceExW(hModule, MAKEINTRESOURCEW(6), MAKEINTRESOURCEW(nId), wLanguage);
+
1420 if (hFoundRes) {
+
1421 DWORD dwSize = SizeofResource(hModule, hFoundRes);
+
1422 if (dwSize) {
+
1423 HGLOBAL hLoadedRes = LoadResource(hModule, hFoundRes);
+
1424 if (hLoadedRes) {
+
1425 LPCWSTR szMessage = reinterpret_cast<LPCWSTR>(LockResource(hLoadedRes));
+
1426 if (szMessage) {
+
1427 WideCharToMultiByte(CP_UTF8, 0, szMessage, dwSize / sizeof(*szMessage), sResult, NULL, NULL);
+
1428 return sResult;
1429 } else
- +
1430 SetLastError(ERROR_LOCK_FAILED);
1431 }
1432 }
1433 }
-
1434 sprintf(sResult, "msg %u", nId);
-
1435 return sResult;
+
1434 sprintf(sResult, "msg %u", nId);
+
1435 return sResult;
1436 }
1437
- +
1447 inline std::string fmt_msg_from_res(_In_opt_ HMODULE hModule, _In_ UINT nId, _In_ WORD wLanguage, ...)
1448 {
-
1449 std::string sResult;
- -
1451 if (hFoundRes) {
- -
1453 if (dwSize) {
- -
1455 if (hLoadedRes) {
-
1456 LPCWSTR szFormat = reinterpret_cast<LPCWSTR>(LockResource(hLoadedRes));
-
1457 if (szFormat) {
-
1458 dwSize /= sizeof(*szFormat);
-
1459 assert(wcsnlen(szFormat, dwSize) < dwSize); // Resource strings must be zero-terminated to make strings directly usable with sprintf.
-
1460 va_list arg;
- -
1462 std::wstring sMessage;
- -
1464 va_end(arg);
- -
1466 return sResult;
+
1449 std::string sResult;
+
1450 HRSRC hFoundRes = FindResourceExW(hModule, MAKEINTRESOURCEW(6), MAKEINTRESOURCEW(nId), wLanguage);
+
1451 if (hFoundRes) {
+
1452 DWORD dwSize = SizeofResource(hModule, hFoundRes);
+
1453 if (dwSize) {
+
1454 HGLOBAL hLoadedRes = LoadResource(hModule, hFoundRes);
+
1455 if (hLoadedRes) {
+
1456 LPCWSTR szFormat = reinterpret_cast<LPCWSTR>(LockResource(hLoadedRes));
+
1457 if (szFormat) {
+
1458 dwSize /= sizeof(*szFormat);
+
1459 assert(wcsnlen(szFormat, dwSize) < dwSize); // Resource strings must be zero-terminated to make strings directly usable with sprintf.
+
1460 va_list arg;
+
1461 va_start(arg, wLanguage);
+
1462 std::wstring sMessage;
+
1463 vsprintf(sMessage, szFormat, arg);
+
1464 va_end(arg);
+
1465 WideCharToMultiByte(CP_UTF8, 0, sMessage, sResult, NULL, NULL);
+
1466 return sResult;
1467 } else
- +
1468 SetLastError(ERROR_LOCK_FAILED);
1469 }
1470 }
1471 }
-
1472 sprintf(sResult, "msg %u", nId);
-
1473 return sResult;
+
1472 sprintf(sResult, "msg %u", nId);
+
1473 return sResult;
1474 }
1475
@@ -1188,32 +1196,32 @@
1480 class num_runtime_error : public std::runtime_error
1481 {
1482 public:
-
1483 typedef _Tn error_type;
+
1483 typedef _Tn error_type;
1484
1485 public:
- -
1493 m_num(num),
-
1494 runtime_error(msg)
+
1492 num_runtime_error(_In_ error_type num, _In_ const std::string& msg) :
+
1493 m_num(num),
+
1494 runtime_error(msg)
1495 {}
1496
- -
1504 m_num(num),
-
1505 runtime_error(msg)
+
1503 num_runtime_error(_In_ error_type num, _In_opt_z_ const char *msg = nullptr) :
+
1504 m_num(num),
+
1505 runtime_error(msg)
1506 {}
1507
- +
1512 {
1513 return m_num;
1514 }
1515
1516 protected:
- +
1518 };
1519
@@ -1222,20 +1230,20 @@
1524 {
1525 public:
- -
1532 m_error(error)
+
1531 last_error_saver(_In_ DWORD error = GetLastError()) :
+
1532 m_error(error)
1533 {}
1534
1541 {
-
1542 SetLastError(m_error);
+
1542 SetLastError(m_error);
1543 }
1544
1545 protected:
-
1546 DWORD m_error;
+
1546 DWORD m_error;
1547 };
1548
@@ -1244,49 +1252,49 @@
1553 {
1554 public:
- +
1560 win_runtime_error(_In_ error_type num) : num_runtime_error<DWORD>(num, message(num))
1561 {}
1562
-
1569 win_runtime_error(_In_ error_type num, _In_ const std::string& msg) : num_runtime_error<DWORD>(num, msg + ": " + message(num))
+
1569 win_runtime_error(_In_ error_type num, _In_ const std::string& msg) : num_runtime_error<DWORD>(num, msg + ": " + message(num))
1570 {}
1571
- +
1578 win_runtime_error(_In_ error_type num, _In_z_ const char *msg) : num_runtime_error<DWORD>(num, std::string(msg) + ": " + message(num))
1579 {}
1580
- +
1584 win_runtime_error() : num_runtime_error<DWORD>(GetLastError(), message(GetLastError()))
1585 {}
1586
-
1592 win_runtime_error(_In_ const std::string& msg) : num_runtime_error<DWORD>(GetLastError(), msg + ": " + message(GetLastError()))
+
1592 win_runtime_error(_In_ const std::string& msg) : num_runtime_error<DWORD>(GetLastError(), msg + ": " + message(GetLastError()))
1593 {}
1594
- +
1600 win_runtime_error(_In_z_ const char *msg) : num_runtime_error<DWORD>(GetLastError(), std::string(msg) + ": " + message(GetLastError()))
1601 {}
1602
1603 protected:
- +
1610 static std::string message(_In_ error_type num, _In_opt_ DWORD dwLanguageId = 0)
1611 {
- -
1613 std::wstring wstr;
- +
1612 last_error_saver last_error_save;
+
1613 std::wstring wstr;
+
1614 if (FormatMessageW(FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS, 0, num, dwLanguageId, wstr, NULL)) {
1615 // Stock Windows error messages contain CRLF. Well... Trim all the trailing white space.
-
1616 wstr.erase(wstr.find_last_not_of(L" \t\n\r\f\v") + 1);
+
1616 wstr.erase(wstr.find_last_not_of(L" \t\n\r\f\v") + 1);
1617 } else
-
1618 sprintf(wstr, num >= 0x10000 ? L"Error 0x%X" : L"Error %u", num);
-
1619 std::string str;
- -
1621 return str;
+
1618 sprintf(wstr, num >= 0x10000 ? L"Error 0x%X" : L"Error %u", num);
+
1619 std::string str;
+
1620 WideCharToMultiByte(CP_UTF8, 0, wstr, str, NULL, NULL);
+
1621 return str;
1622 }
1623 };
@@ -1301,54 +1309,54 @@
1636 public:
1639
- +
1645 basic_string_printf(_In_z_ _Printf_format_string_ const _Elem *format, ...)
1646 {
-
1647 va_list arg;
- -
1649 vsprintf(*this, format, arg);
-
1650 va_end(arg);
+
1647 va_list arg;
+
1648 va_start(arg, format);
+
1649 vsprintf(*this, format, arg);
+
1650 va_end(arg);
1651 }
1652
1654
1657
- +
1664 basic_string_printf(_In_ HINSTANCE hInstance, _In_ UINT nFormatID, ...)
1665 {
-
1666 _Myt format;
-
1667 ATLENSURE(format.LoadString(hInstance, nFormatID));
+
1666 _Myt format;
+
1667 ATLENSURE(format.LoadString(hInstance, nFormatID));
1668
-
1669 va_list arg;
- -
1671 vsprintf(*this, format, arg);
-
1672 va_end(arg);
+
1669 va_list arg;
+
1670 va_start(arg, nFormatID);
+
1671 vsprintf(*this, format, arg);
+
1672 va_end(arg);
1673 }
1674
- +
1682 basic_string_printf(_In_ HINSTANCE hInstance, _In_ WORD wLanguageID, _In_ UINT nFormatID, ...)
1683 {
-
1684 _Myt format;
- +
1684 _Myt format;
+
1685 ATLENSURE(format.LoadString(hInstance, nFormatID, wLanguageID));
1686
-
1687 va_list arg;
- -
1689 vsprintf(*this, format, arg);
-
1690 va_end(arg);
+
1687 va_list arg;
+
1688 va_start(arg, nFormatID);
+
1689 vsprintf(*this, format, arg);
+
1690 va_end(arg);
1691 }
1692
1694 };
1695
-
1699 typedef basic_string_printf<char, std::char_traits<char>, std::allocator<char> > string_printf;
+
1699 typedef basic_string_printf<char, std::char_traits<char>, std::allocator<char> > string_printf;
1700
-
1704 typedef basic_string_printf<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > wstring_printf;
+
1704 typedef basic_string_printf<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > wstring_printf;
1705
1709#ifdef _UNICODE
-
1710 typedef wstring_printf tstring_printf;
+
1710 typedef wstring_printf tstring_printf;
1711#else
-
1712 typedef string_printf tstring_printf;
+
1712 typedef string_printf tstring_printf;
1713#endif
1714
1718 template<class _Elem, class _Traits, class _Ax>
@@ -1358,82 +1366,82 @@
1721 public:
1724
- +
1730 basic_string_msg(_In_z_ _FormatMessage_format_string_ const _Elem *format, ...)
1731 {
-
1732 va_list arg;
- - -
1735 va_end(arg);
+
1732 va_list arg;
+
1733 va_start(arg, format);
+
1734 FormatMessage(FORMAT_MESSAGE_FROM_STRING, format, 0, 0, *this, &arg);
+
1735 va_end(arg);
1736 }
1737
1739
1742
- +
1749 basic_string_msg(_In_ HINSTANCE hInstance, _In_ UINT nFormatID, ...)
1750 {
-
1751 _Myt format(GetManager());
-
1752 ATLENSURE(format.LoadString(hInstance, nFormatID));
+
1751 _Myt format(GetManager());
+
1752 ATLENSURE(format.LoadString(hInstance, nFormatID));
1753
-
1754 va_list arg;
- - -
1757 va_end(arg);
+
1754 va_list arg;
+
1755 va_start(arg, nFormatID);
+
1756 FormatMessage(FORMAT_MESSAGE_FROM_STRING, format, 0, 0, *this, &arg);
+
1757 va_end(arg);
1758 }
1759
- +
1767 basic_string_msg(_In_ HINSTANCE hInstance, _In_ WORD wLanguageID, _In_ UINT nFormatID, ...)
1768 {
-
1769 _Myt format(GetManager());
- +
1769 _Myt format(GetManager());
+
1770 ATLENSURE(format.LoadString(hInstance, nFormatID, wLanguageID));
1771
-
1772 va_list arg;
- - -
1775 va_end(arg);
+
1772 va_list arg;
+
1773 va_start(arg, nFormatID);
+
1774 FormatMessage(FORMAT_MESSAGE_FROM_STRING, format, 0, 0, *this, &arg);
+
1775 va_end(arg);
1776 }
1777
1779
- +
1785 basic_string_msg(_In_ DWORD dwFlags, _In_opt_ LPCVOID lpSource, _In_ DWORD dwMessageId, _In_ DWORD dwLanguageId, _In_opt_ va_list *Arguments)
1786 {
- +
1787 FormatMessage(dwFlags & ~FORMAT_MESSAGE_ARGUMENT_ARRAY, lpSource, dwMessageId, dwLanguageId, *this, Arguments);
1788 }
1789
- +
1795 basic_string_msg(_In_ DWORD dwFlags, _In_opt_ LPCVOID lpSource, _In_ DWORD dwMessageId, _In_ DWORD dwLanguageId, _In_opt_ DWORD_PTR *Arguments)
1796 {
- +
1797 FormatMessage(dwFlags | FORMAT_MESSAGE_ARGUMENT_ARRAY, lpSource, dwMessageId, dwLanguageId, *this, (va_list*)Arguments);
1798 }
1799
- +
1805 basic_string_msg(_In_ DWORD dwFlags, _In_z_ LPCTSTR pszFormat, _In_opt_ va_list *Arguments)
1806 {
- +
1807 FormatMessage(dwFlags & ~FORMAT_MESSAGE_ARGUMENT_ARRAY | FORMAT_MESSAGE_FROM_STRING, pszFormat, 0, 0, *this, Arguments);
1808 }
1809
- +
1815 basic_string_msg(_In_ DWORD dwFlags, _In_z_ LPCTSTR pszFormat, _In_opt_ DWORD_PTR *Arguments)
1816 {
- +
1817 FormatMessage(dwFlags | FORMAT_MESSAGE_ARGUMENT_ARRAY | FORMAT_MESSAGE_FROM_STRING, pszFormat, 0, 0, *this, (va_list*)Arguments);
1818 }
1819 };
1820
-
1824 typedef basic_string_msg<char, std::char_traits<char>, std::allocator<char> > string_msg;
+
1824 typedef basic_string_msg<char, std::char_traits<char>, std::allocator<char> > string_msg;
1825
-
1829 typedef basic_string_msg<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > wstring_msg;
+
1829 typedef basic_string_msg<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > wstring_msg;
1830
1834#ifdef _UNICODE
-
1835 typedef wstring_msg tstring_msg;
+
1835 typedef wstring_msg tstring_msg;
1836#else
-
1837 typedef string_msg tstring_msg;
+
1837 typedef string_msg tstring_msg;
1838#endif
1839
1843 template<class _Elem, class _Traits, class _Ax>
@@ -1443,14 +1451,14 @@
1846 public:
1849
- +
1856 basic_string_guid(_In_ const GUID &guid, _In_z_ _Printf_format_string_ const _Elem *format)
1857 {
- -
1859 guid.Data1,
-
1860 guid.Data2,
-
1861 guid.Data3,
-
1862 guid.Data4[0], guid.Data4[1],
-
1863 guid.Data4[2], guid.Data4[3], guid.Data4[4], guid.Data4[5], guid.Data4[6], guid.Data4[7]);
+
1858 sprintf<_Elem, _Traits, _Ax>(*this, format,
+
1859 guid.Data1,
+
1860 guid.Data2,
+
1861 guid.Data3,
+
1862 guid.Data4[0], guid.Data4[1],
+
1863 guid.Data4[2], guid.Data4[3], guid.Data4[4], guid.Data4[5], guid.Data4[6], guid.Data4[7]);
1864 }
1865
@@ -1463,8 +1471,8 @@
1874 public:
1877
- -
1884 basic_string_guid<char, std::char_traits<char>, std::allocator<char> >(guid, "{%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}")
+
1883 string_guid(_In_ const GUID &guid) :
+
1884 basic_string_guid<char, std::char_traits<char>, std::allocator<char> >(guid, "{%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}")
1885 {}
1886
@@ -1477,8 +1485,8 @@
1895 public:
1898
- -
1905 basic_string_guid<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >(guid, L"{%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}")
+
1904 wstring_guid(_In_ const GUID &guid) :
+
1905 basic_string_guid<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >(guid, L"{%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}")
1906 {}
1907
@@ -1502,38 +1510,38 @@
1937 class sanitizing_allocator : public std::allocator<_Ty>
1938 {
1939 public:
-
1940 typedef std::allocator<_Ty> _Mybase;
+
1940 typedef std::allocator<_Ty> _Mybase;
1941
1945 template<class _Other>
1946 struct rebind
1947 {
- +
1949 };
1950
- +
1955 {}
1956
- +
1961 {}
1962
1966 template<class _Other>
- +
1967 sanitizing_allocator(_In_ const sanitizing_allocator<_Other> &_Othr) noexcept : _Mybase(_Othr)
1968 {}
1969
-
1973 void deallocate(_In_ _Ty* const _Ptr, _In_ const std::size_t _Count)
+
1973 void deallocate(_In_ _Ty* const _Ptr, _In_ const std::size_t _Count)
1974 {
1975 // Sanitize then free.
-
1976 SecureZeroMemory(_Ptr, sizeof(_Ty) * _Count);
-
1977 _Mybase::deallocate(_Ptr, _Count);
+
1976 SecureZeroMemory(_Ptr, sizeof(_Ty) * _Count);
+
1977 _Mybase::deallocate(_Ptr, _Count);
1978 }
1979 };
@@ -1541,9 +1549,9 @@
1980
1981 #pragma warning(pop)
1982
-
1990 typedef std::basic_string<char, std::char_traits<char>, sanitizing_allocator<char> > sanitizing_string;
+
1990 typedef std::basic_string<char, std::char_traits<char>, sanitizing_allocator<char> > sanitizing_string;
1991
-
1999 typedef std::basic_string<wchar_t, std::char_traits<wchar_t>, sanitizing_allocator<wchar_t> > sanitizing_wstring;
+
1999 typedef std::basic_string<wchar_t, std::char_traits<wchar_t>, sanitizing_allocator<wchar_t> > sanitizing_wstring;
2000
2004#ifdef _UNICODE
2005 typedef sanitizing_wstring sanitizing_tstring;
@@ -1559,19 +1567,19 @@
2021 {
-
2022 ZeroMemory(m_data, N);
+
2022 ZeroMemory(m_data, N);
2023 }
2024
2029 {
-
2030 SecureZeroMemory(m_data, N);
+
2030 SecureZeroMemory(m_data, N);
2031 }
2032
2033 public:
-
2034 unsigned char m_data[N];
+
2034 unsigned char m_data[N];
2035 };
2036
@@ -1612,7 +1620,6 @@
bool operator>=(handle_type h) const
Is handle greater than or equal to?
Definition Common.h:1188
handle_type operator->() const
Provides object handle member access when the object handle is a pointer to a class or struct.
Definition Common.h:1133
handle_type * operator&()
Returns the object handle reference.
Definition Common.h:1122
-
T handle_type
Datatype of the object handle this template class handles.
Definition Common.h:1029
handle(handle_type h) noexcept
Initializes a new class instance with an already available object handle.
Definition Common.h:1047
bool operator<(handle_type h) const
Is handle less than?
Definition Common.h:1162
handle< handle_type, INVAL > & operator=(handle_type h) noexcept
Attaches already available object handle.
Definition Common.h:1073
@@ -1625,6 +1632,7 @@
bool operator==(handle_type h) const
Is handle equal to?
Definition Common.h:1227
handle(handle< handle_type, INVAL > &&h) noexcept
Move constructor.
Definition Common.h:1055
handle_type detach()
Dismisses the object handle from this class.
Definition Common.h:1251
+
T handle_type
Datatype of the object handle this template class handles.
Definition Common.h:1029
bool operator>(handle_type h) const
Is handle greater than?
Definition Common.h:1201
bool operator<=(handle_type h) const
Is handle less than or equal to?
Definition Common.h:1175
Saves GetLastError and restores SetLastError when going out of scope.
Definition Common.h:1524
@@ -1634,8 +1642,8 @@
num_runtime_error(error_type num, const char *msg=nullptr)
Constructs an exception.
Definition Common.h:1503
num_runtime_error(error_type num, const std::string &msg)
Constructs an exception.
Definition Common.h:1492
error_type number() const
Returns the error number.
Definition Common.h:1511
-
_Tn error_type
Error number type.
Definition Common.h:1483
error_type m_num
Numeric error code.
Definition Common.h:1517
+
_Tn error_type
Error number type.
Definition Common.h:1483
std::unique_ptr< _Ty[], _Dx > & m_own
Original owner of the pointer.
Definition Common.h:994
ref_unique_ptr(ref_unique_ptr< _Ty[], _Dx > &&other)
Moves object.
Definition Common.h:957
virtual ~ref_unique_ptr()
Returns ownership of the pointer.
Definition Common.h:967
@@ -1649,9 +1657,9 @@
ref_unique_ptr(std::unique_ptr< _Ty, _Dx > &owner)
Takes ownership of the pointer.
Definition Common.h:870
An allocator template that sanitizes each memory block before it is destroyed or reallocated.
Definition Common.h:1938
sanitizing_allocator(const sanitizing_allocator< _Ty > &_Othr)
Construct by copying.
Definition Common.h:1960
+
std::allocator< _Ty > _Mybase
Base type.
Definition Common.h:1940
sanitizing_allocator(const sanitizing_allocator< _Other > &_Othr) noexcept
Construct from a related allocator.
Definition Common.h:1967
void deallocate(_Ty *const _Ptr, const std::size_t _Count)
Deallocate object at _Ptr sanitizing its content first.
Definition Common.h:1973
-
std::allocator< _Ty > _Mybase
Base type.
Definition Common.h:1940
sanitizing_allocator() noexcept
Construct default allocator.
Definition Common.h:1954
Sanitizing BLOB.
Definition Common.h:2015
sanitizing_blob()
Constructs uninitialized BLOB.
Definition Common.h:2020
@@ -1697,21 +1705,22 @@
Deleter for unique_ptr using GlobalFree.
Definition Common.h:796
GlobalFree_delete()
Default construct.
Definition Common.h:800
void operator()(HGLOBAL _Ptr) const
Delete a pointer.
Definition Common.h:807
+
LocalFree_delete< _Ty > _Myt
This type.
Definition Common.h:765
LocalFree_delete() noexcept
Default construct.
Definition Common.h:770
-
LocalFree_delete< _Ty > _Myt
This type.
Definition Common.h:765
void operator()(_Other *) const
Delete a pointer of another type.
Definition Common.h:786
void operator()(_Ty *_Ptr) const noexcept
Delete a pointer.
Definition Common.h:775
Deleter for unique_ptr using LocalFree.
Definition Common.h:735
-
LocalFree_delete< _Ty > _Myt
This type.
Definition Common.h:736
+
LocalFree_delete< _Ty > _Myt
This type.
Definition Common.h:736
LocalFree_delete(const LocalFree_delete< _Ty2 > &)
Construct from another LocalFree_delete.
Definition Common.h:746
void operator()(_Ty *_Ptr) const
Delete a pointer.
Definition Common.h:753
LocalFree_delete()
Default construct.
Definition Common.h:741
Convert this type to sanitizing_allocator<_Other>
Definition Common.h:1947
-
sanitizing_allocator< _Other > other
Other type.
Definition Common.h:1948
+
sanitizing_allocator< _Other > other
Other type.
Definition Common.h:1948
+ diff --git a/_cred_8h_source.html b/_cred_8h_source.html index f313cfaa..b162a5d9 100644 --- a/_cred_8h_source.html +++ b/_cred_8h_source.html @@ -3,13 +3,15 @@ - + WinStd: include/WinStd/Cred.h Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ +
Cred.h
@@ -197,40 +205,40 @@
124 template <class _Ty> struct CredFree_delete
125 {
- +
127
132
-
136 template <class _Ty2> CredFree_delete(const CredFree_delete<_Ty2>&) {}
+
136 template <class _Ty2> CredFree_delete(const CredFree_delete<_Ty2>&) {}
137
-
143 void operator()(_Ty *_Ptr) const
+
143 void operator()(_Ty *_Ptr) const
144 {
-
145 CredFree(_Ptr);
+
145 CredFree(_Ptr);
146 }
147 };
148
-
152 template <class _Ty> struct CredFree_delete<_Ty[]>
+
152 template <class _Ty> struct CredFree_delete<_Ty[]>
153 {
- +
155
160
-
166 void operator()(_Ty *_Ptr) const noexcept
+
166 void operator()(_Ty *_Ptr) const noexcept
167 {
-
168 CredFree(_Ptr);
+
168 CredFree(_Ptr);
169 }
170
176 template<class _Other>
-
177 void operator()(_Other *) const
+
177 void operator()(_Other *) const
178 {
-
179 CredFree(_Ptr);
+
179 CredFree(_Ptr);
180 }
181 };
@@ -270,7 +278,6 @@
219
220#pragma warning(pop)
221
-
Helper class for returning pointers to std::unique_ptr.
Definition Common.h:863
static BOOL CredUnprotectA(BOOL fAsSelf, LPCSTR pszProtectedCredentials, DWORD cchCredentials, std::basic_string< char, _Traits, _Ax > &sCredentials)
Decrypts credentials that were previously encrypted by using the CredProtect function.
Definition Cred.h:68
static BOOL CredProtectA(BOOL fAsSelf, LPCSTR pszCredentials, DWORD cchCredentials, std::basic_string< char, _Traits, _Ax > &sProtectedCredentials, CRED_PROTECTION_TYPE *ProtectionType)
Encrypts the specified credentials so that only the current security context can decrypt them.
Definition Cred.h:20
static BOOL CredEnumerateA(LPCSTR Filter, DWORD Flags, DWORD *Count, std::unique_ptr< PCREDENTIALA[], winstd::CredFree_delete< PCREDENTIALA[]> > &cCredentials) noexcept
Enumerates the credentials from the user's credential set. The credential set used is the one associa...
Definition Cred.h:193
@@ -278,19 +285,20 @@
static BOOL CredProtectW(BOOL fAsSelf, LPCWSTR pszCredentials, DWORD cchCredentials, std::basic_string< wchar_t, _Traits, _Ax > &sProtectedCredentials, CRED_PROTECTION_TYPE *ProtectionType)
Encrypts the specified credentials so that only the current security context can decrypt them.
Definition Cred.h:46
static BOOL CredUnprotectW(BOOL fAsSelf, LPCWSTR pszProtectedCredentials, DWORD cchCredentials, std::basic_string< wchar_t, _Traits, _Ax > &sCredentials)
Decrypts credentials that were previously encrypted by using the CredProtect function.
Definition Cred.h:94
#define WINSTD_STACK_BUFFER_BYTES
Size of the stack buffer in bytes used for initial system function call.
Definition Common.h:94
-
CredFree_delete< _Ty > _Myt
This type.
Definition Cred.h:154
+
CredFree_delete< _Ty > _Myt
This type.
Definition Cred.h:154
CredFree_delete()
Default construct.
Definition Cred.h:159
void operator()(_Other *) const
Delete a pointer of another type.
Definition Cred.h:177
void operator()(_Ty *_Ptr) const noexcept
Delete a pointer.
Definition Cred.h:166
Deleter for unique_ptr using CredFree.
Definition Cred.h:125
+
CredFree_delete< _Ty > _Myt
This type.
Definition Cred.h:126
void operator()(_Ty *_Ptr) const
Delete a pointer.
Definition Cred.h:143
CredFree_delete()
Default construct.
Definition Cred.h:131
-
CredFree_delete< _Ty > _Myt
This type.
Definition Cred.h:126
CredFree_delete(const CredFree_delete< _Ty2 > &)
Construct from another CredFree_delete.
Definition Cred.h:136
+ diff --git a/_crypt_8h_source.html b/_crypt_8h_source.html index 24540bcc..59a824ec 100644 --- a/_crypt_8h_source.html +++ b/_crypt_8h_source.html @@ -3,13 +3,15 @@ - + WinStd: include/WinStd/Crypt.h Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ +
Crypt.h
@@ -305,7 +313,7 @@
256 class cert_context : public dplhandle<PCCERT_CONTEXT, NULL>
257 {
- +
258 WINSTD_DPLHANDLE_IMPL(cert_context, PCCERT_CONTEXT, NULL)
259
260 public:
@@ -317,49 +325,49 @@
271
-
280 bool operator==(_In_ const handle_type &other) const noexcept
+
280 bool operator==(_In_ const handle_type &other) const noexcept
281 {
282 // TODO: [Crypto] Make constant time.
283 return
284 m_h == other ||
-
285 m_h->cbCertEncoded == other->cbCertEncoded && memcmp(m_h->pbCertEncoded, other->pbCertEncoded, m_h->cbCertEncoded) == 0;
+
285 m_h->cbCertEncoded == other->cbCertEncoded && memcmp(m_h->pbCertEncoded, other->pbCertEncoded, m_h->cbCertEncoded) == 0;
286 }
287
-
296 bool operator!=(_In_ const handle_type &other) const noexcept
+
296 bool operator!=(_In_ const handle_type &other) const noexcept
297 {
298 return !operator==(other);
299 }
300
-
309 bool operator<(_In_ const handle_type &other) const noexcept
+
309 bool operator<(_In_ const handle_type &other) const noexcept
310 {
311 // TODO: [Crypto] Make constant time.
-
312 const int r = memcmp(m_h->pbCertEncoded, other->pbCertEncoded, std::min<DWORD>(m_h->cbCertEncoded, other->cbCertEncoded));
-
313 return r < 0 || r == 0 && m_h->cbCertEncoded < other->cbCertEncoded;
+
312 const int r = memcmp(m_h->pbCertEncoded, other->pbCertEncoded, std::min<DWORD>(m_h->cbCertEncoded, other->cbCertEncoded));
+
313 return r < 0 || r == 0 && m_h->cbCertEncoded < other->cbCertEncoded;
314 }
315
-
324 bool operator>(_In_ const handle_type &other) const noexcept
+
324 bool operator>(_In_ const handle_type &other) const noexcept
325 {
326 // TODO: [Crypto] Make constant time.
-
327 const int r = memcmp(m_h->pbCertEncoded, other->pbCertEncoded, std::min<DWORD>(m_h->cbCertEncoded, other->cbCertEncoded));
-
328 return r > 0 || r == 0 && m_h->cbCertEncoded > other->cbCertEncoded;
+
327 const int r = memcmp(m_h->pbCertEncoded, other->pbCertEncoded, std::min<DWORD>(m_h->cbCertEncoded, other->cbCertEncoded));
+
328 return r > 0 || r == 0 && m_h->cbCertEncoded > other->cbCertEncoded;
329 }
330
-
339 bool operator<=(_In_ const handle_type &other) const noexcept
+
339 bool operator<=(_In_ const handle_type &other) const noexcept
340 {
341 return !operator>(other);
342 }
343
-
352 bool operator>=(_In_ const handle_type &other) const noexcept
+
352 bool operator>=(_In_ const handle_type &other) const noexcept
353 {
354 return !operator<(other);
355 }
@@ -367,17 +375,17 @@
356
357 protected:
-
363 void free_internal() noexcept override
+
363 void free_internal() noexcept override
364 {
- +
365 CertFreeCertificateContext(m_h);
366 }
367
- +
378 {
379 // As per doc, this only increases refcounter. Should never fail.
- +
380 return CertDuplicateCertificateContext(h);
381 }
382 };
@@ -386,7 +394,7 @@
389 class cert_chain_context : public dplhandle<PCCERT_CHAIN_CONTEXT, NULL>
390 {
- +
391 WINSTD_DPLHANDLE_IMPL(cert_chain_context, PCCERT_CHAIN_CONTEXT, NULL)
392
393 public:
@@ -399,17 +407,17 @@
404
405 protected:
-
411 void free_internal() noexcept override
+
411 void free_internal() noexcept override
412 {
- +
413 CertFreeCertificateChain(m_h);
414 }
415
- +
426 {
427 // As per doc, this only increases refcounter. Should never fail.
- +
428 return CertDuplicateCertificateChain(h);
429 }
430 };
@@ -418,7 +426,7 @@
438 class cert_store : public handle<HCERTSTORE, NULL>
439 {
- +
440 WINSTD_HANDLE_IMPL(cert_store, HCERTSTORE, NULL)
441
442 public:
@@ -431,9 +439,9 @@
453
454 protected:
-
460 void free_internal() noexcept override
+
460 void free_internal() noexcept override
461 {
- +
462 CertCloseStore(m_h, 0);
463 }
464 };
@@ -442,7 +450,7 @@
471 class crypt_prov : public handle<HCRYPTPROV, NULL>
472 {
- +
473 WINSTD_HANDLE_IMPL(crypt_prov, HCRYPTPROV, NULL)
474
475 public:
@@ -455,9 +463,9 @@
486
487 protected:
-
493 void free_internal() noexcept override
+
493 void free_internal() noexcept override
494 {
- +
495 CryptReleaseContext(m_h, 0);
496 }
497 };
@@ -466,7 +474,7 @@
504 class crypt_hash : public dplhandle<HCRYPTHASH, NULL>
505 {
- +
506 WINSTD_DPLHANDLE_IMPL(crypt_hash, HCRYPTHASH, NULL)
507
508 public:
@@ -479,18 +487,18 @@
519
520 protected:
-
526 void free_internal() noexcept override
+
526 void free_internal() noexcept override
527 {
- +
528 CryptDestroyHash(m_h);
529 }
530
- +
541 {
- -
543 if (CryptDuplicateHash(h, NULL, 0, &hNew))
-
544 return hNew;
+
542 handle_type hNew;
+
543 if (CryptDuplicateHash(h, NULL, 0, &hNew))
+
544 return hNew;
545 throw win_runtime_error("CryptDuplicateHash failed");
546 }
@@ -500,7 +508,7 @@
557 class crypt_key : public dplhandle<HCRYPTKEY, NULL>
558 {
- +
559 WINSTD_DPLHANDLE_IMPL(crypt_key, HCRYPTKEY, NULL)
560
561 public:
@@ -512,63 +520,63 @@
572
- +
581 bool create_exp1(_In_ HCRYPTPROV hProv, _In_ DWORD dwKeySpec)
582 {
- - +
583 if (dwKeySpec != AT_KEYEXCHANGE && dwKeySpec != AT_SIGNATURE) {
+
584 SetLastError(ERROR_INVALID_PARAMETER);
585 return false;
586 }
587
588 // Generate the private key.
- - +
589 handle_type h;
+
590 if (CryptGenKey(hProv, dwKeySpec, CRYPT_EXPORTABLE, &h)) {
591 // Export the private key, we'll convert it to a private exponent of one key.
-
592 std::vector<BYTE, sanitizing_allocator<BYTE>> key_blob;
- - +
592 std::vector<BYTE, sanitizing_allocator<BYTE>> key_blob;
+
593 if (CryptExportKey(h, 0, PRIVATEKEYBLOB, 0, key_blob)) {
+
594 CryptDestroyKey(h);
595
596 // Get the byte length of the key.
597 size_t
-
598 size_key = *reinterpret_cast<DWORD*>(&key_blob[12])/8,
- +
598 size_key = *reinterpret_cast<DWORD*>(&key_blob[12])/8,
+
599 size_prime = size_key/2;
600
601 // Modify the Exponent in Key BLOB format
602 // Key BLOB format is documented in SDK
603
604 // Convert pubexp in rsapubkey to 1
-
605 LPBYTE ptr = &key_blob[16];
-
606 *reinterpret_cast<DWORD*>(ptr) = 1;
-
607 ptr += sizeof(DWORD);
+
605 LPBYTE ptr = &key_blob[16];
+
606 *reinterpret_cast<DWORD*>(ptr) = 1;
+
607 ptr += sizeof(DWORD);
608
609 // Skip modulus, prime1, prime2
-
610 ptr += size_key;
-
611 ptr += size_prime;
-
612 ptr += size_prime;
+
610 ptr += size_key;
+
611 ptr += size_prime;
+
612 ptr += size_prime;
613
614 // Convert exponent1 to 1
-
615 ptr[0] = 1;
-
616 memset(ptr + 1, 0, size_prime - 1);
-
617 ptr += size_prime;
+
615 ptr[0] = 1;
+
616 memset(ptr + 1, 0, size_prime - 1);
+
617 ptr += size_prime;
618
619 // Convert exponent2 to 1
-
620 ptr[0] = 1;
-
621 memset(ptr + 1, 0, size_prime - 1);
-
622 ptr += size_prime;
+
620 ptr[0] = 1;
+
621 memset(ptr + 1, 0, size_prime - 1);
+
622 ptr += size_prime;
623
624 // Skip coefficient
-
625 ptr += size_prime;
+
625 ptr += size_prime;
626
627 // Convert privateExponent to 1
-
628 ptr[0] = 1;
-
629 memset(ptr + 1, 0, size_key - 1);
+
628 ptr[0] = 1;
+
629 memset(ptr + 1, 0, size_key - 1);
630
631 // Import the exponent-of-one private key.
-
632 if (CryptImportKey(hProv, key_blob.data(), static_cast<DWORD>(key_blob.size()), 0, 0, &h)) {
-
633 attach(h);
+
632 if (CryptImportKey(hProv, key_blob.data(), static_cast<DWORD>(key_blob.size()), 0, 0, &h)) {
+
633 attach(h);
634 return true;
635 }
636 } else
- +
637 CryptDestroyKey(h);
638 }
639
640 return false;
@@ -577,18 +585,18 @@
642
643 protected:
-
649 void free_internal() noexcept override
+
649 void free_internal() noexcept override
650 {
- +
651 CryptDestroyKey(m_h);
652 }
653
- +
664 {
- -
666 if (CryptDuplicateKey(h, NULL, 0, &hNew))
-
667 return hNew;
+
665 handle_type hNew;
+
666 if (CryptDuplicateKey(h, NULL, 0, &hNew))
+
667 return hNew;
668 throw win_runtime_error("CryptDuplicateKey failed");
669 }
@@ -602,65 +610,65 @@
678 {
679 public:
- +
683 data_blob() noexcept
684 {
-
685 cbData = 0;
-
686 pbData = NULL;
+
685 cbData = 0;
+
686 pbData = NULL;
687 }
688
- +
692 data_blob(_In_count_(size) BYTE *data, _In_ DWORD size) noexcept
693 {
-
694 cbData = size;
-
695 pbData = data;
+
694 cbData = size;
+
695 pbData = data;
696 }
697
-
701 data_blob(_In_ const DATA_BLOB &other)
+
701 data_blob(_In_ const DATA_BLOB &other)
702 {
-
703 cbData = other.cbData;
-
704 if (cbData) {
-
705 pbData = static_cast<BYTE*>(LocalAlloc(LMEM_FIXED, other.cbData));
-
706 if (!pbData) throw win_runtime_error("LocalAlloc failed");
-
707 memcpy(pbData, other.pbData, other.cbData);
+
703 cbData = other.cbData;
+
704 if (cbData) {
+
705 pbData = static_cast<BYTE*>(LocalAlloc(LMEM_FIXED, other.cbData));
+
706 if (!pbData) throw win_runtime_error("LocalAlloc failed");
+
707 memcpy(pbData, other.pbData, other.cbData);
708 } else
-
709 pbData = NULL;
+
709 pbData = NULL;
710 }
711
-
715 data_blob(_Inout_ data_blob &&other) noexcept
+
715 data_blob(_Inout_ data_blob &&other) noexcept
716 {
-
717 cbData = other.cbData;
-
718 pbData = other.pbData;
+
717 cbData = other.cbData;
+
718 pbData = other.pbData;
719 other.cbData = 0;
-
720 other.pbData = NULL;
+
720 other.pbData = NULL;
721 }
722
726 virtual ~data_blob()
727 {
-
728 if (pbData != NULL)
- +
728 if (pbData != NULL)
+
729 LocalFree(pbData);
730 }
731
-
735 data_blob& operator=(_In_ const DATA_BLOB &other)
+
735 data_blob& operator=(_In_ const DATA_BLOB &other)
736 {
737 if (this != &other) {
-
738 cbData = other.cbData;
-
739 if (pbData)
- -
741 if (cbData) {
-
742 pbData = static_cast<BYTE*>(LocalAlloc(LMEM_FIXED, other.cbData));
-
743 if (!pbData) throw win_runtime_error("LocalAlloc failed");
-
744 memcpy(pbData, other.pbData, other.cbData);
+
738 cbData = other.cbData;
+
739 if (pbData)
+
740 LocalFree(pbData);
+
741 if (cbData) {
+
742 pbData = static_cast<BYTE*>(LocalAlloc(LMEM_FIXED, other.cbData));
+
743 if (!pbData) throw win_runtime_error("LocalAlloc failed");
+
744 memcpy(pbData, other.pbData, other.cbData);
745 } else
-
746 pbData = NULL;
+
746 pbData = NULL;
747 }
748
749 return *this;
@@ -668,15 +676,15 @@
751
- +
755 data_blob& operator=(_Inout_ data_blob &&other) noexcept
756 {
757 if (this != &other) {
-
758 cbData = other.cbData;
-
759 if (pbData)
- -
761 pbData = other.pbData;
+
758 cbData = other.cbData;
+
759 if (pbData)
+
760 LocalFree(pbData);
+
761 pbData = other.pbData;
762 other.cbData = 0;
-
763 other.pbData = NULL;
+
763 other.pbData = NULL;
764 }
765
766 return *this;
@@ -684,23 +692,23 @@
768
- +
772 DWORD size() const noexcept
773 {
-
774 return cbData;
+
774 return cbData;
775 }
776
- +
780 const BYTE* data() const noexcept
781 {
-
782 return pbData;
+
782 return pbData;
783 }
784
- +
788 BYTE* data() noexcept
789 {
-
790 return pbData;
+
790 return pbData;
791 }
792 };
@@ -845,10 +853,9 @@
data_blob & operator=(const DATA_BLOB &other)
Copy an existing BLOB.
Definition Crypt.h:735
Base abstract template class to support object handle keeping for objects that support trivial handle...
Definition Common.h:1287
Base abstract template class to support generic object handle keeping.
Definition Common.h:1024
-
T handle_type
Datatype of the object handle this template class handles.
Definition Common.h:1029
-
handle_type m_h
Object handle.
Definition Common.h:1276
-
void attach(handle_type h) noexcept
Sets a new object handle for the class.
Definition Common.h:1239
-
Helper class for returning pointers to std::unique_ptr.
Definition Common.h:863
+
handle_type m_h
Definition Common.h:1276
+
void attach(handle_type h) noexcept
Definition Common.h:1239
+
PCCERT_CONTEXT handle_type
Definition Common.h:1029
Windows runtime error.
Definition Common.h:1553
static bool CryptImportPublicKeyInfo(HCRYPTPROV hCryptProv, DWORD dwCertEncodingType, PCERT_PUBLIC_KEY_INFO pInfo, winstd::crypt_key &key)
Imports the public key.
Definition Crypt.h:889
static BOOL WINAPI CertGetCertificateContextProperty(PCCERT_CONTEXT pCertContext, DWORD dwPropId, std::vector< _Ty, _Ax > &aData)
Retrieves the information contained in an extended property of a certificate context.
Definition Crypt.h:55
@@ -869,11 +876,12 @@
#define WINSTD_STACK_BUFFER_BYTES
Size of the stack buffer in bytes used for initial system function call.
Definition Common.h:94
#define WINSTD_DPLHANDLE_IMPL(C, T, INVAL)
Implements default constructors and operators to prevent their auto-generation by compiler.
Definition Common.h:176
#define WINSTD_HANDLE_IMPL(C, T, INVAL)
Implements default constructors and operators to prevent their auto-generation by compiler.
Definition Common.h:164
-
static const T invalid
Invalid handle value.
Definition Common.h:1034
+
static const PCCERT_CONTEXT invalid
Definition Common.h:1034
+
diff --git a/_e_a_p_8h_source.html b/_e_a_p_8h_source.html index 32485393..5603bd81 100644 --- a/_e_a_p_8h_source.html +++ b/_e_a_p_8h_source.html @@ -3,13 +3,15 @@ - + WinStd: include/WinStd/EAP.h Source File + + @@ -32,18 +34,23 @@
- + + @@ -80,6 +87,7 @@
+
EAP.h
@@ -164,13 +172,13 @@
107 {
- +
112
118 template <class _T>
-
119 void operator()(_T *_Ptr) const
+
119 void operator()(_T *_Ptr) const
120 {
- +
121 EapHostPeerFreeMemory((BYTE*)_Ptr);
122 }
123 };
@@ -181,13 +189,13 @@
134 {
- +
139
143 template <class _T>
-
144 void operator()(_T *_Ptr) const
+
144 void operator()(_T *_Ptr) const
145 {
- +
146 EapHostPeerFreeRuntimeMemory((BYTE*)_Ptr);
147 }
148 };
@@ -198,12 +206,12 @@
159 {
- +
164
-
170 void operator()(EAP_ERROR *_Ptr) const noexcept
+
170 void operator()(EAP_ERROR *_Ptr) const noexcept
171 {
- +
172 EapHostPeerFreeErrorMemory(_Ptr);
173 }
174 };
@@ -214,12 +222,12 @@
185 {
- +
190
-
196 void operator()(EAP_ERROR *_Ptr) const noexcept
+
196 void operator()(EAP_ERROR *_Ptr) const noexcept
197 {
- +
198 EapHostPeerFreeEapError(_Ptr);
199 }
200 };
@@ -234,123 +242,123 @@
213 {
214 public:
- +
218 eap_attr() noexcept
219 {
- -
221 dwLength = 0;
-
222 pValue = NULL;
+
220 eaType = eatReserved;
+
221 dwLength = 0;
+
222 pValue = NULL;
223 }
224
-
228 eap_attr(_In_ const EAP_ATTRIBUTE &a)
+
228 eap_attr(_In_ const EAP_ATTRIBUTE &a)
229 {
-
230 eaType = a.eaType;
-
231 dwLength = a.dwLength;
-
232 if (a.dwLength) {
-
233 pValue = new BYTE[a.dwLength];
-
234 memcpy(pValue, a.pValue, a.dwLength);
+
230 eaType = a.eaType;
+
231 dwLength = a.dwLength;
+
232 if (a.dwLength) {
+
233 pValue = new BYTE[a.dwLength];
+
234 memcpy(pValue, a.pValue, a.dwLength);
235 } else
-
236 pValue = NULL;
+
236 pValue = NULL;
237 }
238
- +
242 eap_attr(_Inout_ eap_attr &&a) noexcept
243 {
-
244 eaType = a.eaType;
-
245 dwLength = a.dwLength;
-
246 if (a.dwLength) {
-
247 pValue = a.pValue;
-
248 a.dwLength = 0;
-
249 a.pValue = NULL;
+
244 eaType = a.eaType;
+
245 dwLength = a.dwLength;
+
246 if (a.dwLength) {
+
247 pValue = a.pValue;
+
248 a.dwLength = 0;
+
249 a.pValue = NULL;
250 } else
-
251 pValue = NULL;
+
251 pValue = NULL;
252 }
253
258 {
-
259 if (pValue)
-
260 delete [] pValue;
+
259 if (pValue)
+
260 delete [] pValue;
261 }
262
-
266 eap_attr& operator=(_In_ const EAP_ATTRIBUTE &a)
+
266 eap_attr& operator=(_In_ const EAP_ATTRIBUTE &a)
267 {
-
268 if (this != &a) {
-
269 eaType = a.eaType;
-
270 dwLength = a.dwLength;
-
271 if (a.dwLength) {
-
272 BYTE *pValueNew = new BYTE[a.dwLength];
-
273 if (pValue)
-
274 delete [] pValue;
-
275 memcpy(pValueNew, a.pValue, a.dwLength);
- +
268 if (this != &a) {
+
269 eaType = a.eaType;
+
270 dwLength = a.dwLength;
+
271 if (a.dwLength) {
+
272 BYTE *pValueNew = new BYTE[a.dwLength];
+
273 if (pValue)
+
274 delete [] pValue;
+
275 memcpy(pValueNew, a.pValue, a.dwLength);
+
276 pValue = pValueNew;
277 } else
-
278 pValue = NULL;
+
278 pValue = NULL;
279 }
280 return *this;
281 }
282
- +
286 eap_attr& operator=(_Inout_ eap_attr &&a) noexcept
287 {
-
288 if (this != &a) {
-
289 eaType = a.eaType;
-
290 dwLength = a.dwLength;
-
291 if (pValue)
-
292 delete [] pValue;
-
293 if (a.dwLength) {
-
294 pValue = a.pValue;
-
295 a.dwLength = 0;
-
296 a.pValue = NULL;
+
288 if (this != &a) {
+
289 eaType = a.eaType;
+
290 dwLength = a.dwLength;
+
291 if (pValue)
+
292 delete [] pValue;
+
293 if (a.dwLength) {
+
294 pValue = a.pValue;
+
295 a.dwLength = 0;
+
296 a.pValue = NULL;
297 } else
-
298 pValue = NULL;
+
298 pValue = NULL;
299 }
300 return *this;
301 }
302
- +
310 void create_ms_mppe_key(_In_ BYTE bVendorType, _In_count_(nKeySize) LPCBYTE pbKey, _In_ BYTE nKeySize)
311 {
-
312 const BYTE nPaddingLength = static_cast<BYTE>((16 - (1 + static_cast<DWORD>(nKeySize))) % 16);
-
313 const DWORD dwLengthNew =
+
312 const BYTE nPaddingLength = static_cast<BYTE>((16 - (1 + static_cast<DWORD>(nKeySize))) % 16);
+
313 const DWORD dwLengthNew =
314 4 + // Vendor-Id
315 1 + // Vendor type
316 1 + // Vendor length
317 2 + // Salt
318 1 + // Key-Length
-
319 nKeySize + // Key
-
320 nPaddingLength; // Padding
+
319 nKeySize + // Key
+
320 nPaddingLength; // Padding
321
322 #pragma warning(push)
323 #pragma warning(disable: 6386)
-
324 LPBYTE p = new BYTE[dwLengthNew];
-
325 p[0] = 0x00; // Vendor-Id (0x137 = 311 = Microsoft)
-
326 p[1] = 0x00; // --|
-
327 p[2] = 0x01; // --|
-
328 p[3] = 0x37; // --^
-
329 p[4] = bVendorType; // Vendor type
-
330 p[5] = static_cast<BYTE>(dwLengthNew - 4); // Vendor length
-
331 p[6] = 0x00; // Salt
-
332 p[7] = 0x00; // --^
-
333 p[8] = nKeySize; // Key-Length
+
324 LPBYTE p = new BYTE[dwLengthNew];
+
325 p[0] = 0x00; // Vendor-Id (0x137 = 311 = Microsoft)
+
326 p[1] = 0x00; // --|
+
327 p[2] = 0x01; // --|
+
328 p[3] = 0x37; // --^
+
329 p[4] = bVendorType; // Vendor type
+
330 p[5] = static_cast<BYTE>(dwLengthNew - 4); // Vendor length
+
331 p[6] = 0x00; // Salt
+
332 p[7] = 0x00; // --^
+
333 p[8] = nKeySize; // Key-Length
334 #pragma warning(pop)
-
335 memcpy(p + 9, pbKey, nKeySize); // Key
-
336 memset(p + 9 + nKeySize, 0, nPaddingLength); // Padding
+
335 memcpy(p + 9, pbKey, nKeySize); // Key
+
336 memset(p + 9 + nKeySize, 0, nPaddingLength); // Padding
337
-
338 if (pValue)
-
339 delete [] pValue;
+
338 if (pValue)
+
339 delete [] pValue;
340
341 #pragma warning(suppress: 26812) // EAP_ATTRIBUTE_TYPE is unscoped.
- - -
344 pValue = p;
+
342 eaType = eatVendorSpecific;
+
343 dwLength = dwLengthNew;
+
344 pValue = p;
345 }
346 };
@@ -364,32 +372,32 @@
358 {
359 public:
- +
366 eap_method_prop(_In_ EAP_METHOD_PROPERTY_TYPE type, _In_ BOOL value) noexcept
367 {
- - -
370 eapMethodPropertyValue.empvBool.length = sizeof(BOOL);
-
371 eapMethodPropertyValue.empvBool.value = value;
+
368 eapMethodPropertyType = type;
+
369 eapMethodPropertyValueType = empvtBool;
+
370 eapMethodPropertyValue.empvBool.length = sizeof(BOOL);
+
371 eapMethodPropertyValue.empvBool.value = value;
372 }
373
- +
380 eap_method_prop(_In_ EAP_METHOD_PROPERTY_TYPE type, _In_ DWORD value) noexcept
381 {
- - -
384 eapMethodPropertyValue.empvDword.length = sizeof(DWORD);
-
385 eapMethodPropertyValue.empvDword.value = value;
+
382 eapMethodPropertyType = type;
+
383 eapMethodPropertyValueType = empvtDword;
+
384 eapMethodPropertyValue.empvDword.length = sizeof(DWORD);
+
385 eapMethodPropertyValue.empvDword.value = value;
386 }
387
- +
394 eap_method_prop(_In_ EAP_METHOD_PROPERTY_TYPE type, _In_z_ LPCWSTR value) noexcept
395 {
- - -
398 eapMethodPropertyValue.empvString.length = static_cast<DWORD>(sizeof(WCHAR)*(wcslen(value) + 1));
-
399 eapMethodPropertyValue.empvString.value = const_cast<BYTE*>(reinterpret_cast<const BYTE*>(value));
+
396 eapMethodPropertyType = type;
+
397 eapMethodPropertyValueType = empvtString;
+
398 eapMethodPropertyValue.empvString.length = static_cast<DWORD>(sizeof(WCHAR)*(wcslen(value) + 1));
+
399 eapMethodPropertyValue.empvString.value = const_cast<BYTE*>(reinterpret_cast<const BYTE*>(value));
400 }
401 };
@@ -398,7 +406,7 @@
406 class eap_packet : public dplhandle<EapPacket*, NULL>
407 {
- +
408 WINSTD_DPLHANDLE_IMPL(eap_packet, EapPacket*, NULL)
409
410 public:
@@ -410,50 +418,50 @@
419
- +
433 bool create(_In_ EapCode code, _In_ BYTE id, _In_ WORD size) noexcept
434 {
-
435 assert(size >= 4); // EAP packets must contain at least Code, Id, and Length fields: 4B.
+
435 assert(size >= 4); // EAP packets must contain at least Code, Id, and Length fields: 4B.
436
-
437 handle_type h = static_cast<handle_type>(HeapAlloc(GetProcessHeap(), 0, size));
-
438 if (h != NULL) {
-
439 h->Code = static_cast<BYTE>(code);
-
440 h->Id = id;
-
441 *reinterpret_cast<WORD*>(h->Length) = htons(size);
+
437 handle_type h = static_cast<handle_type>(HeapAlloc(GetProcessHeap(), 0, size));
+
438 if (h != NULL) {
+
439 h->Code = static_cast<BYTE>(code);
+
440 h->Id = id;
+
441 *reinterpret_cast<WORD*>(h->Length) = htons(size);
442
-
443 attach(h);
+
443 attach(h);
444 return true;
445 } else {
- +
446 SetLastError(ERROR_OUTOFMEMORY);
447 return false;
448 }
449 }
450
- +
454 WORD size() const noexcept
455 {
-
456 return m_h != NULL ? ntohs(*(WORD*)m_h->Length) : 0;
+
456 return m_h != NULL ? ntohs(*(WORD*)m_h->Length) : 0;
457 }
458
459 protected:
-
463 void free_internal() noexcept override
+
463 void free_internal() noexcept override
464 {
- +
465 HeapFree(GetProcessHeap(), 0, m_h);
466 }
467
- +
472 {
-
473 assert(h);
-
474 const WORD n = ntohs(*reinterpret_cast<WORD*>(h->Length));
-
475 handle_type h2 = static_cast<handle_type>(HeapAlloc(GetProcessHeap(), 0, n));
-
476 if (h2 != invalid) {
-
477 _Analysis_assume_(h2 != NULL); // VS2022 can't figure out `invalid` is `NULL`
-
478 memcpy(h2, h, n);
-
479 return h2;
+
473 assert(h);
+
474 const WORD n = ntohs(*reinterpret_cast<WORD*>(h->Length));
+
475 handle_type h2 = static_cast<handle_type>(HeapAlloc(GetProcessHeap(), 0, n));
+
476 if (h2 != invalid) {
+
477 _Analysis_assume_(h2 != NULL); // VS2022 can't figure out `invalid` is `NULL`
+
478 memcpy(h2, h, n);
+
479 return h2;
480 }
481 throw std::bad_alloc();
482 }
@@ -468,41 +476,41 @@
491
492 public:
- +
497 {
- - +
498 dwNumberOfMethods = 0;
+
499 pEapMethods = NULL;
500 }
501
- +
508 {
-
509 dwNumberOfMethods = other.dwNumberOfMethods;
-
510 pEapMethods = other.pEapMethods;
+
509 dwNumberOfMethods = other.dwNumberOfMethods;
+
510 pEapMethods = other.pEapMethods;
511 other.dwNumberOfMethods = 0;
-
512 other.pEapMethods = NULL;
+
512 other.pEapMethods = NULL;
513 }
514
519 {
-
520 if (pEapMethods)
+
520 if (pEapMethods)
521 free_internal();
522 }
523
- +
530 {
531 if (this != std::addressof(other)) {
-
532 if (pEapMethods)
+
532 if (pEapMethods)
533 free_internal();
-
534 dwNumberOfMethods = other.dwNumberOfMethods;
-
535 pEapMethods = other.pEapMethods;
+
534 dwNumberOfMethods = other.dwNumberOfMethods;
+
535 pEapMethods = other.pEapMethods;
536 other.dwNumberOfMethods = 0;
-
537 other.pEapMethods = NULL;
+
537 other.pEapMethods = NULL;
538 }
539 return *this;
540 }
@@ -510,12 +518,12 @@
541
542 protected:
544
-
545 void free_internal() noexcept
+
545 void free_internal() noexcept
546 {
-
547 for (DWORD i = 0; i < dwNumberOfMethods; i++)
-
548 free_internal(pEapMethods + i);
+
547 for (DWORD i = 0; i < dwNumberOfMethods; i++)
+
548 free_internal(pEapMethods + i);
549
-
550 EapHostPeerFreeMemory(reinterpret_cast<BYTE*>(pEapMethods));
+
550 EapHostPeerFreeMemory(reinterpret_cast<BYTE*>(pEapMethods));
551 }
552
553 static void free_internal(_In_ EAP_METHOD_INFO *pMethodInfo) noexcept
@@ -537,105 +545,105 @@
576 {
577 public:
-
584 eap_runtime_error(_In_ const EAP_ERROR &err, _In_ const std::string& msg) :
-
585 m_type (err.type ),
- - - - - - - +
584 eap_runtime_error(_In_ const EAP_ERROR &err, _In_ const std::string& msg) :
+
585 m_type (err.type ),
+
586 m_reason (err.dwReasonCode ),
+
587 m_root_cause_id (err.rootCauseGuid ),
+
588 m_root_cause_desc(err.pRootCauseString ),
+
589 m_repair_id (err.repairGuid ),
+
590 m_repair_desc (err.pRepairString ),
+
591 m_help_link_id (err.helpLinkGuid ),
+
592 win_runtime_error(err.dwWinError, msg.c_str())
593 {}
594
- -
601 m_type (err.type ),
- - - - - - - +
600 eap_runtime_error(_In_ const EAP_ERROR &err) :
+
601 m_type (err.type ),
+
602 m_reason (err.dwReasonCode ),
+
603 m_root_cause_id (err.rootCauseGuid ),
+
604 m_root_cause_desc(err.pRootCauseString),
+
605 m_repair_id (err.repairGuid ),
+
606 m_repair_desc (err.pRepairString ),
+
607 m_help_link_id (err.helpLinkGuid ),
+
608 win_runtime_error(err.dwWinError )
609 {}
610
- -
618 m_type (err.type ),
- - - - - - - +
617 eap_runtime_error(_In_ const EAP_ERROR &err, _In_z_ const char *msg) :
+
618 m_type (err.type ),
+
619 m_reason (err.dwReasonCode ),
+
620 m_root_cause_id (err.rootCauseGuid ),
+
621 m_root_cause_desc(err.pRootCauseString),
+
622 m_repair_id (err.repairGuid ),
+
623 m_repair_desc (err.pRepairString ),
+
624 m_help_link_id (err.helpLinkGuid ),
+
625 win_runtime_error(err.dwWinError, msg )
626 {}
627
- +
631 const EAP_METHOD_TYPE& type() const noexcept
632 {
633 return m_type;
634 }
635
- +
639 DWORD reason() const noexcept
640 {
641 return m_reason;
642 }
643
- +
647 const GUID& root_cause_id() const noexcept
648 {
649 return m_root_cause_id;
650 }
651
-
655 const wchar_t* root_cause() const noexcept
+
655 const wchar_t* root_cause() const noexcept
656 {
657 return m_root_cause_desc.c_str();
658 }
659
- +
663 const GUID& repair_id() const noexcept
664 {
665 return m_repair_id;
666 }
667
-
671 const wchar_t* repair() const noexcept
+
671 const wchar_t* repair() const noexcept
672 {
673 return m_repair_desc.c_str();
674 }
675
- +
679 const GUID& help_link_id() const noexcept
680 {
681 return m_help_link_id;
682 }
683
684 protected:
- +
685 EAP_METHOD_TYPE m_type;
686
- +
687 DWORD m_reason;
688
- +
690 std::wstring m_root_cause_desc;
691
- +
693 std::wstring m_repair_desc;
694
- +
696 };
697
@@ -684,10 +692,9 @@
std::wstring m_root_cause_desc
A localized and readable string that describes the root cause of the error.
Definition EAP.h:690
const GUID & help_link_id() const noexcept
Returns help_link ID.
Definition EAP.h:679
DWORD m_reason
The reason code for the error.
Definition EAP.h:687
-
T handle_type
Datatype of the object handle this template class handles.
Definition Common.h:1029
-
handle_type m_h
Object handle.
Definition Common.h:1276
-
void attach(handle_type h) noexcept
Sets a new object handle for the class.
Definition Common.h:1239
-
Helper class for returning pointers to std::unique_ptr.
Definition Common.h:863
+
handle_type m_h
Definition Common.h:1276
+
void attach(handle_type h) noexcept
Definition Common.h:1239
+
EapPacket * handle_type
Definition Common.h:1029
Windows runtime error.
Definition Common.h:1553
std::unique_ptr< EAP_ERROR, EapHostPeerFreeEapError_delete > eap_error_runtime
EAP_ERROR wrapper class.
Definition EAP.h:205
std::unique_ptr< BYTE[], EapHostPeerFreeMemory_delete > eap_blob
EapHost BLOB wrapper class.
Definition EAP.h:128
@@ -718,7 +725,7 @@
@ identity
Identity.
#define WINSTD_NONCOPYABLE(C)
Declares a class as non-copyable.
Definition Common.h:67
#define WINSTD_DPLHANDLE_IMPL(C, T, INVAL)
Implements default constructors and operators to prevent their auto-generation by compiler.
Definition Common.h:176
-
static const T invalid
Invalid handle value.
Definition Common.h:1034
+
static const EapPacket * invalid
Definition Common.h:1034
Deleter for unique_ptr to EAP_ERROR using EapHostPeerFreeEapError.
Definition EAP.h:185
EapHostPeerFreeEapError_delete() noexcept
Default constructor.
Definition EAP.h:189
void operator()(EAP_ERROR *_Ptr) const noexcept
Delete a pointer.
Definition EAP.h:196
@@ -734,7 +741,8 @@
+
diff --git a/_e_t_w_8h_source.html b/_e_t_w_8h_source.html index 72910aad..13426b94 100644 --- a/_e_t_w_8h_source.html +++ b/_e_t_w_8h_source.html @@ -3,13 +3,15 @@ - + WinStd: include/WinStd/ETW.h Source File + + @@ -32,18 +34,23 @@
- + + @@ -80,6 +87,7 @@
+
ETW.h
@@ -189,92 +197,92 @@
124 {
-
125 Ptr = 0;
-
126 Size = 0;
-
127 Reserved = (ULONG)-1; // Used for varadic argument terminator.
+
125 Ptr = 0;
+
126 Size = 0;
+
127 Reserved = (ULONG)-1; // Used for varadic argument terminator.
128 }
129
137 #pragma warning(suppress: 26495) // EventDataDescCreate() initializes all members of EVENT_DATA_DESCRIPTOR
-
138 event_data(_In_ const char &data)
+
138 event_data(_In_ const char &data)
139 {
-
140 EventDataDescCreate(this, &data, (ULONG)(sizeof(data)));
+
140 EventDataDescCreate(this, &data, (ULONG)(sizeof(data)));
141 }
142
150 #pragma warning(suppress: 26495) // EventDataDescCreate() initializes all members of EVENT_DATA_DESCRIPTOR
-
151 event_data(_In_ const unsigned char &data)
+
151 event_data(_In_ const unsigned char &data)
152 {
-
153 EventDataDescCreate(this, &data, (ULONG)(sizeof(data)));
+
153 EventDataDescCreate(this, &data, (ULONG)(sizeof(data)));
154 }
155
163 #pragma warning(suppress: 26495) // EventDataDescCreate() initializes all members of EVENT_DATA_DESCRIPTOR
-
164 event_data(_In_ const int &data)
+
164 event_data(_In_ const int &data)
165 {
-
166 EventDataDescCreate(this, &data, (ULONG)(sizeof(data)));
+
166 EventDataDescCreate(this, &data, (ULONG)(sizeof(data)));
167 }
168
176 #pragma warning(suppress: 26495) // EventDataDescCreate() initializes all members of EVENT_DATA_DESCRIPTOR
-
177 event_data(_In_ const unsigned int &data)
+
177 event_data(_In_ const unsigned int &data)
178 {
-
179 EventDataDescCreate(this, &data, (ULONG)(sizeof(data)));
+
179 EventDataDescCreate(this, &data, (ULONG)(sizeof(data)));
180 }
181
189 #pragma warning(suppress: 26495) // EventDataDescCreate() initializes all members of EVENT_DATA_DESCRIPTOR
-
190 event_data(_In_ const long &data)
+
190 event_data(_In_ const long &data)
191 {
-
192 EventDataDescCreate(this, &data, (ULONG)(sizeof(data)));
+
192 EventDataDescCreate(this, &data, (ULONG)(sizeof(data)));
193 }
194
202 #pragma warning(suppress: 26495) // EventDataDescCreate() initializes all members of EVENT_DATA_DESCRIPTOR
-
203 event_data(_In_ const unsigned long &data)
+
203 event_data(_In_ const unsigned long &data)
204 {
-
205 EventDataDescCreate(this, &data, (ULONG)(sizeof(data)));
+
205 EventDataDescCreate(this, &data, (ULONG)(sizeof(data)));
206 }
207
215 #pragma warning(suppress: 26495) // EventDataDescCreate() initializes all members of EVENT_DATA_DESCRIPTOR
-
216 event_data(_In_ const GUID &data)
+
216 event_data(_In_ const GUID &data)
217 {
-
218 EventDataDescCreate(this, &data, (ULONG)(sizeof(data)));
+
218 EventDataDescCreate(this, &data, (ULONG)(sizeof(data)));
219 }
220
228 #pragma warning(suppress: 26495) // EventDataDescCreate() initializes all members of EVENT_DATA_DESCRIPTOR
-
229 event_data(_In_opt_z_ const char *data)
+
229 event_data(_In_opt_z_ const char *data)
230 {
231 if (data)
-
232 EventDataDescCreate(this, data, (ULONG)((strlen(data) + 1) * sizeof(*data)));
+
232 EventDataDescCreate(this, data, (ULONG)((strlen(data) + 1) * sizeof(*data)));
233 else {
234 // Writing NULL pointer with 0B length causes trouble in Event Viewer: message template string is displayed only, parameters are not rendered.
-
235 static const char null[] = "(null)";
-
236 EventDataDescCreate(this, null, sizeof(null));
+
235 static const char null[] = "(null)";
+
236 EventDataDescCreate(this, null, sizeof(null));
237 }
238 }
239
247 #pragma warning(suppress: 26495) // EventDataDescCreate() initializes all members of EVENT_DATA_DESCRIPTOR
-
248 event_data(_In_opt_z_ const wchar_t *data)
+
248 event_data(_In_opt_z_ const wchar_t *data)
249 {
250 if (data)
-
251 EventDataDescCreate(this, data, (ULONG)((wcslen(data) + 1) * sizeof(*data)));
+
251 EventDataDescCreate(this, data, (ULONG)((wcslen(data) + 1) * sizeof(*data)));
252 else {
253 // Writing NULL pointer with 0B length causes trouble in Event Viewer: message template string is displayed only, parameters are not rendered.
-
254 static const wchar_t null[] = L"(null)";
-
255 EventDataDescCreate(this, null, sizeof(null));
+
254 static const wchar_t null[] = L"(null)";
+
255 EventDataDescCreate(this, null, sizeof(null));
256 }
257 }
@@ -282,17 +290,17 @@
266 #pragma warning(suppress: 26495) // EventDataDescCreate() initializes all members of EVENT_DATA_DESCRIPTOR
267 template<class _Elem, class _Traits, class _Ax>
-
268 event_data(_In_ const std::basic_string<_Elem, _Traits, _Ax> &data)
+
268 event_data(_In_ const std::basic_string<_Elem, _Traits, _Ax> &data)
269 {
-
270 EventDataDescCreate(this, data.c_str(), (ULONG)((data.length() + 1) * sizeof(_Elem)));
+
270 EventDataDescCreate(this, data.c_str(), (ULONG)((data.length() + 1) * sizeof(_Elem)));
271 }
272
281 #pragma warning(suppress: 26495) // EventDataDescCreate() initializes all members of EVENT_DATA_DESCRIPTOR
-
282 event_data(_In_bytecount_(size) const void *data, _In_ ULONG size)
+
282 event_data(_In_bytecount_(size) const void *data, _In_ ULONG size)
283 {
-
284 EventDataDescCreate(this, data, size);
+
284 EventDataDescCreate(this, data, size);
285 }
286 };
@@ -307,12 +315,12 @@
303 {
-
304 memset((EVENT_RECORD*)this, 0, sizeof(EVENT_RECORD));
+
304 memset((EVENT_RECORD*)this, 0, sizeof(EVENT_RECORD));
305 }
306
-
312 event_rec(_In_ const event_rec &other) : EVENT_RECORD(other)
+
312 event_rec(_In_ const event_rec &other) : EVENT_RECORD(other)
313 {
314 set_extended_data_internal(other.ExtendedDataCount, other.ExtendedData);
315 set_user_data_internal(other.UserDataLength, other.UserData);
@@ -320,7 +328,7 @@
317
-
323 event_rec(_In_ const EVENT_RECORD &other) : EVENT_RECORD(other)
+
323 event_rec(_In_ const EVENT_RECORD &other) : EVENT_RECORD(other)
324 {
325 set_extended_data_internal(other.ExtendedDataCount, other.ExtendedData);
326 set_user_data_internal(other.UserDataLength, other.UserData);
@@ -328,25 +336,25 @@
328
-
334 event_rec(_Inout_ event_rec&& other) noexcept : EVENT_RECORD(other)
+
334 event_rec(_Inout_ event_rec&& other) noexcept : EVENT_RECORD(other)
335 {
-
336 memset((EVENT_RECORD*)&other, 0, sizeof(EVENT_RECORD));
+
336 memset((EVENT_RECORD*)&other, 0, sizeof(EVENT_RECORD));
337 }
338
343 {
-
344 if (ExtendedData)
-
345 delete reinterpret_cast<unsigned char*>(ExtendedData);
+
344 if (ExtendedData)
+
345 delete reinterpret_cast<unsigned char*>(ExtendedData);
346
-
347 if (UserData)
-
348 delete reinterpret_cast<unsigned char*>(UserData);
+
347 if (UserData)
+
348 delete reinterpret_cast<unsigned char*>(UserData);
349 }
350
- +
356 event_rec& operator=(_In_ const event_rec &other)
357 {
358 if (this != std::addressof(other)) {
359 (EVENT_RECORD&)*this = other;
@@ -359,7 +367,7 @@
366
-
372 event_rec& operator=(_In_ const EVENT_RECORD &other)
+
372 event_rec& operator=(_In_ const EVENT_RECORD &other)
373 {
374 if (this != std::addressof(other)) {
375 (EVENT_RECORD&)*this = other;
@@ -372,11 +380,11 @@
382
- +
388 event_rec& operator=(_Inout_ event_rec&& other) noexcept
389 {
390 if (this != std::addressof(other)) {
391 (EVENT_RECORD&)*this = other;
-
392 memset((EVENT_RECORD*)&other, 0, sizeof(EVENT_RECORD));
+
392 memset((EVENT_RECORD*)&other, 0, sizeof(EVENT_RECORD));
393 }
394
395 return *this;
@@ -384,20 +392,20 @@
397
- +
404 void set_extended_data(_In_ USHORT count, _In_count_(count) const EVENT_HEADER_EXTENDED_DATA_ITEM *data)
405 {
-
406 if (ExtendedData)
-
407 delete reinterpret_cast<unsigned char*>(ExtendedData);
+
406 if (ExtendedData)
+
407 delete reinterpret_cast<unsigned char*>(ExtendedData);
408
- +
409 set_extended_data_internal(count, data);
410 }
411
- +
418 void set_user_data(_In_ USHORT size, _In_bytecount_(size) LPCVOID data)
419 {
-
420 if (UserData)
-
421 delete reinterpret_cast<unsigned char*>(UserData);
+
420 if (UserData)
+
421 delete reinterpret_cast<unsigned char*>(UserData);
422
423 set_user_data_internal(size, data);
424 }
@@ -405,54 +413,54 @@
425
426 protected:
- +
433 void set_extended_data_internal(_In_ USHORT count, _In_count_(count) const EVENT_HEADER_EXTENDED_DATA_ITEM *data)
434 {
-
435 if (count) {
-
436 assert(data);
+
435 if (count) {
+
436 assert(data);
437
438 // Count the total required memory.
-
439 size_t data_size = 0;
-
440 for (size_t i = 0; i < count; i++)
-
441 data_size += data[i].DataSize;
+
439 size_t data_size = 0;
+
440 for (size_t i = 0; i < count; i++)
+
441 data_size += data[i].DataSize;
442
443 // Allocate memory for extended data.
-
444 ExtendedData = reinterpret_cast<EVENT_HEADER_EXTENDED_DATA_ITEM*>(new unsigned char[sizeof(EVENT_HEADER_EXTENDED_DATA_ITEM)*count + data_size]);
+
444 ExtendedData = reinterpret_cast<EVENT_HEADER_EXTENDED_DATA_ITEM*>(new unsigned char[sizeof(EVENT_HEADER_EXTENDED_DATA_ITEM)*count + data_size]);
445
446 // Bulk-copy extended data descriptors.
- +
447 memcpy(ExtendedData, data, sizeof(EVENT_HEADER_EXTENDED_DATA_ITEM) * count);
448
449 // Copy the data.
-
450 unsigned char *ptr = reinterpret_cast<unsigned char*>(ExtendedData + count);
-
451 for (size_t i = 0; i < count; i++) {
-
452 if (data[i].DataSize) {
-
453 memcpy(ptr, (void*)(data[i].DataPtr), data[i].DataSize);
-
454 ExtendedData[i].DataPtr = (ULONGLONG)ptr;
-
455 ptr += data[i].DataSize;
+
450 unsigned char *ptr = reinterpret_cast<unsigned char*>(ExtendedData + count);
+
451 for (size_t i = 0; i < count; i++) {
+
452 if (data[i].DataSize) {
+
453 memcpy(ptr, (void*)(data[i].DataPtr), data[i].DataSize);
+
454 ExtendedData[i].DataPtr = (ULONGLONG)ptr;
+
455 ptr += data[i].DataSize;
456 } else
-
457 ExtendedData[i].DataPtr = NULL;
+
457 ExtendedData[i].DataPtr = NULL;
458 }
459 } else
- +
460 ExtendedData = NULL;
461
- +
462 ExtendedDataCount = count;
463 }
464
- +
471 void set_user_data_internal(_In_ USHORT size, _In_bytecount_(size) LPCVOID data)
472 {
473 if (size) {
-
474 assert(data);
+
474 assert(data);
475
476 // Allocate memory for user data.
-
477 UserData = new unsigned char[size];
+
477 UserData = new unsigned char[size];
478
479 // Copy user data.
-
480 memcpy(UserData, data, size);
+
480 memcpy(UserData, data, size);
481 } else
-
482 UserData = NULL;
+
482 UserData = NULL;
483
-
484 UserDataLength = size;
+
484 UserDataLength = size;
485 }
486 };
@@ -461,7 +469,7 @@
491 class event_provider : public handle<REGHANDLE, NULL>
492 {
- +
493 WINSTD_HANDLE_IMPL(event_provider, REGHANDLE, NULL)
494
495 public:
@@ -473,157 +481,157 @@
506
- +
516 ULONG create(_In_ LPCGUID ProviderId)
517 {
- - -
520 if (ulRes == ERROR_SUCCESS)
-
521 attach(h);
-
522 return ulRes;
+
518 handle_type h;
+
519 ULONG ulRes = EventRegister(ProviderId, enable_callback, this, &h);
+
520 if (ulRes == ERROR_SUCCESS)
+
521 attach(h);
+
522 return ulRes;
523 }
524
- +
534 ULONG write(_In_ PCEVENT_DESCRIPTOR EventDescriptor)
535 {
-
536 assert(m_h != invalid);
-
537 return EventWrite(m_h, EventDescriptor, 0, NULL);
+
536 assert(m_h != invalid);
+
537 return EventWrite(m_h, EventDescriptor, 0, NULL);
538 }
539
- +
549 ULONG write(_In_ PCEVENT_DESCRIPTOR EventDescriptor, _In_ ULONG UserDataCount = 0, _In_opt_count_(UserDataCount) PEVENT_DATA_DESCRIPTOR UserData = NULL)
550 {
-
551 assert(m_h != invalid);
- +
551 assert(m_h != invalid);
+
552 return EventWrite(m_h, EventDescriptor, UserDataCount, UserData);
553 }
554
-
566 ULONG write(_In_ PCEVENT_DESCRIPTOR EventDescriptor, _In_ const EVENT_DATA_DESCRIPTOR param1, ...)
+
566 ULONG write(_In_ PCEVENT_DESCRIPTOR EventDescriptor, _In_ const EVENT_DATA_DESCRIPTOR param1, ...)
567 {
-
568 assert(m_h != invalid);
+
568 assert(m_h != invalid);
569
570 // The first argument (param1) is outside of varadic argument list.
-
571 if (param1.Ptr == winstd::blank_event_data.Ptr &&
-
572 param1.Size == winstd::blank_event_data.Size &&
-
573 param1.Reserved == winstd::blank_event_data.Reserved)
-
574 return EventWrite(m_h, EventDescriptor, 0, NULL);
+
571 if (param1.Ptr == winstd::blank_event_data.Ptr &&
+
572 param1.Size == winstd::blank_event_data.Size &&
+
573 param1.Reserved == winstd::blank_event_data.Reserved)
+
574 return EventWrite(m_h, EventDescriptor, 0, NULL);
575
-
576 va_list arg;
- - -
579 std::vector<EVENT_DATA_DESCRIPTOR> params;
- +
576 va_list arg;
+
577 va_start(arg, param1);
+
578 va_list arg_start = arg;
+
579 std::vector<EVENT_DATA_DESCRIPTOR> params;
+
580 ULONG param_count;
581
582 // Preallocate array.
- -
584 const EVENT_DATA_DESCRIPTOR &p = va_arg(arg, const EVENT_DATA_DESCRIPTOR);
-
585 if (p.Ptr == winstd::blank_event_data.Ptr &&
-
586 p.Size == winstd::blank_event_data.Size &&
-
587 p.Reserved == winstd::blank_event_data.Reserved) break;
+
583 for (param_count = 1; param_count < MAX_EVENT_DATA_DESCRIPTORS; param_count++) {
+
584 const EVENT_DATA_DESCRIPTOR &p = va_arg(arg, const EVENT_DATA_DESCRIPTOR);
+
585 if (p.Ptr == winstd::blank_event_data.Ptr &&
+
586 p.Size == winstd::blank_event_data.Size &&
+
587 p.Reserved == winstd::blank_event_data.Reserved) break;
588 }
-
589 params.reserve(param_count);
+
589 params.reserve(param_count);
590
591 // Copy parameters to array.
-
592 arg = arg_start;
-
593 params.push_back(param1);
+
592 arg = arg_start;
+
593 params.push_back(param1);
594 for (;;) {
-
595 const EVENT_DATA_DESCRIPTOR &p = va_arg(arg, const EVENT_DATA_DESCRIPTOR);
-
596 if (p.Ptr == winstd::blank_event_data.Ptr &&
-
597 p.Size == winstd::blank_event_data.Size &&
-
598 p.Reserved == winstd::blank_event_data.Reserved) break;
-
599 params.push_back(p);
+
595 const EVENT_DATA_DESCRIPTOR &p = va_arg(arg, const EVENT_DATA_DESCRIPTOR);
+
596 if (p.Ptr == winstd::blank_event_data.Ptr &&
+
597 p.Size == winstd::blank_event_data.Size &&
+
598 p.Reserved == winstd::blank_event_data.Reserved) break;
+
599 params.push_back(p);
600 }
601
-
602 va_end(arg);
+
602 va_end(arg);
603#pragma warning(push)
604#pragma warning(disable: 28020)
- +
605 return EventWrite(m_h, EventDescriptor, param_count, params.data());
606#pragma warning(pop)
607 }
608
- +
620 ULONG write(_In_ PCEVENT_DESCRIPTOR EventDescriptor, _In_ va_list arg)
621 {
-
622 assert(m_h != invalid);
+
622 assert(m_h != invalid);
623
- -
625 std::vector<EVENT_DATA_DESCRIPTOR> params;
- +
624 va_list arg_start = arg;
+
625 std::vector<EVENT_DATA_DESCRIPTOR> params;
+
626 ULONG param_count;
627
628 // Preallocate array.
- -
630 const EVENT_DATA_DESCRIPTOR &p = va_arg(arg, const EVENT_DATA_DESCRIPTOR);
-
631 if (p.Ptr == winstd::blank_event_data.Ptr &&
-
632 p.Size == winstd::blank_event_data.Size &&
-
633 p.Reserved == winstd::blank_event_data.Reserved) break;
+
629 for (param_count = 0; param_count < MAX_EVENT_DATA_DESCRIPTORS; param_count++) {
+
630 const EVENT_DATA_DESCRIPTOR &p = va_arg(arg, const EVENT_DATA_DESCRIPTOR);
+
631 if (p.Ptr == winstd::blank_event_data.Ptr &&
+
632 p.Size == winstd::blank_event_data.Size &&
+
633 p.Reserved == winstd::blank_event_data.Reserved) break;
634 }
-
635 params.reserve(param_count);
+
635 params.reserve(param_count);
636
637 // Copy parameters to array.
-
638 arg = arg_start;
+
638 arg = arg_start;
639 for (;;) {
-
640 const EVENT_DATA_DESCRIPTOR &p = va_arg(arg, const EVENT_DATA_DESCRIPTOR);
-
641 if (p.Ptr == winstd::blank_event_data.Ptr &&
-
642 p.Size == winstd::blank_event_data.Size &&
-
643 p.Reserved == winstd::blank_event_data.Reserved) break;
-
644 params.push_back(p);
+
640 const EVENT_DATA_DESCRIPTOR &p = va_arg(arg, const EVENT_DATA_DESCRIPTOR);
+
641 if (p.Ptr == winstd::blank_event_data.Ptr &&
+
642 p.Size == winstd::blank_event_data.Size &&
+
643 p.Reserved == winstd::blank_event_data.Reserved) break;
+
644 params.push_back(p);
645 }
646
647#pragma warning(push)
648#pragma warning(disable: 28020)
- +
649 return EventWrite(m_h, EventDescriptor, param_count, params.data());
650#pragma warning(pop)
651 }
652
- +
662 ULONG write(_In_ UCHAR Level, _In_ ULONGLONG Keyword, _In_z_ _Printf_format_string_ PCWSTR String, ...)
663 {
-
664 assert(m_h != invalid);
+
664 assert(m_h != invalid);
665
-
666 std::wstring msg;
-
667 va_list arg;
+
666 std::wstring msg;
+
667 va_list arg;
668
669 // Format message.
- - -
672 va_end(arg);
+
670 va_start(arg, String);
+
671 vsprintf(msg, String, arg);
+
672 va_end(arg);
673
674 // Write string event.
-
675 return EventWriteString(m_h, Level, Keyword, msg.c_str());
+
675 return EventWriteString(m_h, Level, Keyword, msg.c_str());
676 }
677
678 protected:
-
684 void free_internal() noexcept override
+
684 void free_internal() noexcept override
685 {
- +
686 EventUnregister(m_h);
687 }
688
- +
694 virtual void enable_callback(_In_ LPCGUID SourceId, _In_ ULONG IsEnabled, _In_ UCHAR Level, _In_ ULONGLONG MatchAnyKeyword, _In_ ULONGLONG MatchAllKeyword, _In_opt_ PEVENT_FILTER_DESCRIPTOR FilterData)
695 {
- - - - - - +
696 UNREFERENCED_PARAMETER(SourceId);
+
697 UNREFERENCED_PARAMETER(IsEnabled);
+
698 UNREFERENCED_PARAMETER(Level);
+
699 UNREFERENCED_PARAMETER(MatchAnyKeyword);
+
700 UNREFERENCED_PARAMETER(MatchAllKeyword);
+
701 UNREFERENCED_PARAMETER(FilterData);
702 }
703
- +
709 static VOID NTAPI enable_callback(_In_ LPCGUID SourceId, _In_ ULONG IsEnabled, _In_ UCHAR Level, _In_ ULONGLONG MatchAnyKeyword, _In_ ULONGLONG MatchAllKeyword, _In_opt_ PEVENT_FILTER_DESCRIPTOR FilterData, _Inout_opt_ PVOID CallbackContext)
710 {
-
711 if (CallbackContext)
- +
711 if (CallbackContext)
+
712 static_cast<event_provider*>(CallbackContext)->enable_callback(SourceId, IsEnabled, Level, MatchAnyKeyword, MatchAllKeyword, FilterData);
713 else
-
714 assert(0); // Where did the "this" pointer get lost?
+
714 assert(0); // Where did the "this" pointer get lost?
715 }
716 };
@@ -641,16 +649,16 @@
731
- - -
740 handle(h)
+
738 event_session(_In_opt_ handle_type h, _In_ const EVENT_TRACE_PROPERTIES *prop) :
+
739 m_prop(reinterpret_cast<EVENT_TRACE_PROPERTIES*>(new char[prop->Wnode.BufferSize])),
+
740 handle(h)
741 {
-
742 memcpy(m_prop.get(), prop, prop->Wnode.BufferSize);
+
742 memcpy(m_prop.get(), prop, prop->Wnode.BufferSize);
743 }
744
- +
750 event_session(_Inout_ event_session &&other) noexcept :
751 m_prop(std::move(other.m_prop)),
752 handle(std::move(other))
753 {}
@@ -665,10 +673,10 @@
765
- +
771 event_session& operator=(_Inout_ event_session &&other) noexcept
772 {
773 if (this != std::addressof(other)) {
-
774 (handle<handle_type, 0>&&)*this = std::move(other);
+
774 (handle<handle_type, 0>&&)*this = std::move(other);
775 m_prop = std::move(other.m_prop);
776 }
777 return *this;
@@ -676,80 +684,80 @@
779
-
785 operator const EVENT_TRACE_PROPERTIES*() const
+
785 operator const EVENT_TRACE_PROPERTIES*() const
786 {
787 return m_prop.get();
788 }
789
-
795 LPCTSTR name() const
+
795 LPCTSTR name() const
796 {
-
797 const EVENT_TRACE_PROPERTIES *prop = m_prop.get();
-
798 return reinterpret_cast<LPCTSTR>(reinterpret_cast<LPCBYTE>(prop) + prop->LoggerNameOffset);
+
797 const EVENT_TRACE_PROPERTIES *prop = m_prop.get();
+
798 return reinterpret_cast<LPCTSTR>(reinterpret_cast<LPCBYTE>(prop) + prop->LoggerNameOffset);
799 }
800
- +
809 void attach(_In_opt_ handle_type h, _In_ EVENT_TRACE_PROPERTIES *prop)
810 {
- -
812 m_prop.reset(prop);
+ +
812 m_prop.reset(prop);
813 }
814
- +
824 ULONG create(_In_z_ LPCTSTR SessionName, _In_ const EVENT_TRACE_PROPERTIES *Properties)
825 {
- -
827 std::unique_ptr<EVENT_TRACE_PROPERTIES> prop(reinterpret_cast<EVENT_TRACE_PROPERTIES*>(new char[Properties->Wnode.BufferSize]));
-
828 memcpy(prop.get(), Properties, Properties->Wnode.BufferSize);
- -
830 if (ulRes == ERROR_SUCCESS)
-
831 attach(h, prop.release());
-
832 return ulRes;
+
826 handle_type h;
+
827 std::unique_ptr<EVENT_TRACE_PROPERTIES> prop(reinterpret_cast<EVENT_TRACE_PROPERTIES*>(new char[Properties->Wnode.BufferSize]));
+
828 memcpy(prop.get(), Properties, Properties->Wnode.BufferSize);
+
829 ULONG ulRes = StartTrace(&h, SessionName, prop.get());
+
830 if (ulRes == ERROR_SUCCESS)
+
831 attach(h, prop.release());
+
832 return ulRes;
833 }
834
- +
844 ULONG enable_trace(_In_ LPCGUID ProviderId, _In_ UCHAR Level, _In_opt_ ULONGLONG MatchAnyKeyword = 0, _In_opt_ ULONGLONG MatchAllKeyword = 0, _In_opt_ ULONG EnableProperty = 0, _In_opt_ PEVENT_FILTER_DESCRIPTOR EnableFilterDesc = NULL)
845 {
-
846 assert(m_h != invalid);
-
847 return EnableTraceEx(
- +
846 assert(m_h != invalid);
+
847 return EnableTraceEx(
+
848 ProviderId,
849 &m_prop->Wnode.Guid,
850 m_h,
- -
852 Level,
- - - - +
851 EVENT_CONTROL_CODE_ENABLE_PROVIDER,
+
852 Level,
+
853 MatchAnyKeyword,
+
854 MatchAllKeyword,
+
855 EnableProperty,
+
856 EnableFilterDesc);
857 }
858
- +
868 ULONG disable_trace(_In_ LPCGUID ProviderId, _In_ UCHAR Level, _In_opt_ ULONGLONG MatchAnyKeyword = 0, _In_opt_ ULONGLONG MatchAllKeyword = 0, _In_opt_ ULONG EnableProperty = 0, _In_opt_ PEVENT_FILTER_DESCRIPTOR EnableFilterDesc = NULL)
869 {
-
870 assert(m_h != invalid);
-
871 return EnableTraceEx(
- +
870 assert(m_h != invalid);
+
871 return EnableTraceEx(
+
872 ProviderId,
873 &m_prop->Wnode.Guid,
874 m_h,
- -
876 Level,
- - - - +
875 EVENT_CONTROL_CODE_DISABLE_PROVIDER,
+
876 Level,
+
877 MatchAnyKeyword,
+
878 MatchAllKeyword,
+
879 EnableProperty,
+
880 EnableFilterDesc);
881 }
882
883 protected:
-
889 void free_internal() noexcept override
+
889 void free_internal() noexcept override
890 {
- +
891 ControlTrace(m_h, name(), m_prop.get(), EVENT_TRACE_CONTROL_STOP);
892 }
893
@@ -761,7 +769,7 @@
903 class event_trace : public handle<TRACEHANDLE, INVALID_PROCESSTRACE_HANDLE>
904 {
- +
905 WINSTD_HANDLE_IMPL(event_trace, TRACEHANDLE, INVALID_PROCESSTRACE_HANDLE)
906
907 public:
@@ -774,9 +782,9 @@
918
919 protected:
-
925 void free_internal() noexcept override
+
925 void free_internal() noexcept override
926 {
- +
927 CloseTrace(m_h);
928 }
929 };
@@ -788,28 +796,28 @@
936 public:
- - - - - - - - - - - -
954 m_level(Level),
- - - - +
943 _In_opt_ LPCGUID SourceId,
+
944 _In_ TRACEHANDLE TraceHandle,
+
945 _In_ LPCGUID ProviderId,
+
946 _In_ UCHAR Level,
+
947 _In_opt_ ULONGLONG MatchAnyKeyword = 0,
+
948 _In_opt_ ULONGLONG MatchAllKeyword = 0,
+
949 _In_opt_ ULONG EnableProperty = 0,
+
950 _In_opt_ PEVENT_FILTER_DESCRIPTOR EnableFilterDesc = NULL) :
+
951 m_provider_id(ProviderId),
+
952 m_source_id(SourceId),
+
953 m_trace_handle(TraceHandle),
+
954 m_level(Level),
+
955 m_match_any_keyword(MatchAnyKeyword),
+
956 m_match_all_keyword(MatchAllKeyword),
+
957 m_enable_property(EnableProperty),
+
958 m_enable_filter_desc(EnableFilterDesc)
959 {
- +
960 m_status = EnableTraceEx(
- +
964 EVENT_CONTROL_CODE_ENABLE_PROVIDER,
965 m_level,
@@ -820,27 +828,27 @@
971
- - - - - - - - - - -
988 m_level(Level),
- - - - +
978 _In_ const event_session &session,
+
979 _In_ LPCGUID ProviderId,
+
980 _In_ UCHAR Level,
+
981 _In_opt_ ULONGLONG MatchAnyKeyword = 0,
+
982 _In_opt_ ULONGLONG MatchAllKeyword = 0,
+
983 _In_opt_ ULONG EnableProperty = 0,
+
984 _In_opt_ PEVENT_FILTER_DESCRIPTOR EnableFilterDesc = NULL) :
+
985 m_provider_id(ProviderId),
+
986 m_source_id(&((const EVENT_TRACE_PROPERTIES*)session)->Wnode.Guid),
+
987 m_trace_handle(session),
+
988 m_level(Level),
+
989 m_match_any_keyword(MatchAnyKeyword),
+
990 m_match_all_keyword(MatchAllKeyword),
+
991 m_enable_property(EnableProperty),
+
992 m_enable_filter_desc(EnableFilterDesc)
993 {
- +
994 m_status = EnableTraceEx(
- +
998 EVENT_CONTROL_CODE_ENABLE_PROVIDER,
999 m_level,
@@ -850,7 +858,7 @@
1005
- +
1011 ULONG status() const
1012 {
1013 return m_status;
1014 }
@@ -859,12 +867,12 @@
1022 {
-
1023 if (m_status == ERROR_SUCCESS)
- +
1023 if (m_status == ERROR_SUCCESS)
+
1024 EnableTraceEx(
- +
1028 EVENT_CONTROL_CODE_DISABLE_PROVIDER,
1029 m_level,
@@ -874,15 +882,15 @@
1035
1036 protected:
- - - - - - - - - +
1037 ULONG m_status;
+ +
1039 LPCGUID m_source_id;
+
1040 TRACEHANDLE m_trace_handle;
+
1041 UCHAR m_level;
+ + + +
1045 PEVENT_FILTER_DESCRIPTOR m_enable_filter_desc;
1046 };
1047
@@ -891,17 +899,17 @@
1054 {
1055 public:
- -
1060 m_ep(ep),
- +
1059 event_fn_auto(_In_ event_provider &ep, _In_ const EVENT_DESCRIPTOR *event_cons, _In_ const EVENT_DESCRIPTOR *event_dest, _In_z_ LPCSTR pszFnName) :
+
1060 m_ep(ep),
+
1061 m_event_dest(event_dest)
1062 {
- - +
1063 EventDataDescCreate(&m_fn_name, pszFnName, (ULONG)(strlen(pszFnName) + 1)*sizeof(*pszFnName));
+
1064 m_ep.write(event_cons, 1, &m_fn_name);
1065 }
1066
- +
1070 event_fn_auto(_In_ const event_fn_auto &other) :
1071 m_ep(other.m_ep),
1073 m_fn_name(other.m_fn_name)
@@ -909,12 +917,12 @@
1075
- +
1079 event_fn_auto(_Inout_ event_fn_auto &&other) noexcept :
1080 m_ep(other.m_ep),
1081 m_event_dest(other.m_event_dest),
1082 m_fn_name(std::move(other.m_fn_name))
1083 {
-
1084 other.m_event_dest = NULL;
+
1084 other.m_event_dest = NULL;
1085 }
1086
@@ -927,10 +935,10 @@
1095
- +
1100 {
1101 if (this != &other) {
-
1102 assert(&m_ep == &other.m_ep);
+
1102 assert(&m_ep == &other.m_ep);
1103 m_event_dest = other.m_event_dest;
1104 m_fn_name = other.m_fn_name;
1105 }
@@ -940,13 +948,13 @@
1109
- +
1113 event_fn_auto& operator=(_Inout_ event_fn_auto &&other) noexcept
1114 {
1115 if (this != &other) {
-
1116 assert(&m_ep == &other.m_ep);
+
1116 assert(&m_ep == &other.m_ep);
1117 m_event_dest = other.m_event_dest;
1118 m_fn_name = std::move(other.m_fn_name);
-
1119 other.m_event_dest = NULL;
+
1119 other.m_event_dest = NULL;
1120 }
1121
1122 return *this;
@@ -955,7 +963,7 @@
1124
1125 protected:
- +
1127 const EVENT_DESCRIPTOR *m_event_dest;
1128 EVENT_DATA_DESCRIPTOR m_fn_name;
1129 };
@@ -966,18 +974,18 @@
1138 {
1139 public:
- -
1144 m_ep(ep),
- - +
1143 event_fn_auto_ret(_In_ event_provider &ep, _In_ const EVENT_DESCRIPTOR *event_cons, _In_ const EVENT_DESCRIPTOR *event_dest, _In_z_ LPCSTR pszFnName, T &result) :
+
1144 m_ep(ep),
+
1145 m_event_dest(event_dest),
+
1146 m_result(result)
1147 {
- - +
1148 EventDataDescCreate(m_desc + 0, pszFnName, (ULONG)(strlen(pszFnName) + 1)*sizeof(*pszFnName));
+
1149 m_ep.write(event_cons, 1, m_desc);
1150 }
1151
- +
1156 m_ep(other.m_ep),
1158 m_result(other.m_result)
@@ -987,13 +995,13 @@
1162
- +
1167 m_ep(other.m_ep),
1169 m_result(other.m_result)
1170 {
1171 m_desc[0] = std::move(other.m_desc[0]);
-
1172 other.m_event_dest = NULL;
+
1172 other.m_event_dest = NULL;
1173 }
1174
@@ -1001,20 +1009,20 @@
1179 {
1180 if (m_event_dest) {
-
1181 EventDataDescCreate(m_desc + 1, &m_result, sizeof(T));
+
1181 EventDataDescCreate(m_desc + 1, &m_result, sizeof(T));
1183 }
1184 }
1185
- +
1190 {
1191 if (this != &other) {
-
1192 assert(&m_ep == &other.m_ep);
+
1192 assert(&m_ep == &other.m_ep);
1193 m_event_dest = other.m_event_dest;
1194 m_desc[0] = other.m_desc[0];
-
1195 assert(&m_result == &other.m_result);
+
1195 assert(&m_result == &other.m_result);
1196 }
1197
1198 return *this;
@@ -1022,14 +1030,14 @@
1200
- +
1205 {
1206 if (this != &other) {
-
1207 assert(&m_ep == &other.m_ep);
+
1207 assert(&m_ep == &other.m_ep);
1208 m_event_dest = other.m_event_dest;
1209 m_desc[0] = std::move(other.m_desc[0]);
-
1210 assert(&m_result == &other.m_result);
-
1211 other.m_event_dest = NULL;
+
1210 assert(&m_result == &other.m_result);
+
1211 other.m_event_dest = NULL;
1212 }
1213
1214 return *this;
@@ -1038,9 +1046,9 @@
1216
1217 protected:
- +
1219 const EVENT_DESCRIPTOR *m_event_dest;
1220 EVENT_DATA_DESCRIPTOR m_desc[2];
- +
1222 };
1223
@@ -1134,10 +1142,10 @@
virtual ~event_trace()
Closes the trace.
Definition ETW.h:913
void free_internal() noexcept override
Closes the trace.
Definition ETW.h:925
Base abstract template class to support generic object handle keeping.
Definition Common.h:1024
-
handle() noexcept
Initializes a new class instance with the object handle set to INVAL.
Definition Common.h:1039
-
handle_type m_h
Object handle.
Definition Common.h:1276
-
void attach(handle_type h) noexcept
Sets a new object handle for the class.
Definition Common.h:1239
-
Helper class for returning pointers to std::unique_ptr.
Definition Common.h:863
+
handle() noexcept
Definition Common.h:1039
+
handle_type m_h
Definition Common.h:1276
+
void attach(handle_type h) noexcept
Definition Common.h:1239
+
REGHANDLE handle_type
Definition Common.h:1029
static ULONG TdhGetEventInformation(PEVENT_RECORD pEvent, ULONG TdhContextCount, PTDH_CONTEXT pTdhContext, std::unique_ptr< TRACE_EVENT_INFO > &info)
Retrieves metadata about an event.
Definition ETW.h:58
static ULONG TdhGetProperty(PEVENT_RECORD pEvent, ULONG TdhContextCount, PTDH_CONTEXT pTdhContext, ULONG PropertyDataCount, PPROPERTY_DATA_DESCRIPTOR pPropertyData, std::vector< _Ty, _Ax > &aData)
Retrieves a property value from the event data.
Definition ETW.h:33
static ULONG TdhGetEventMapInformation(PEVENT_RECORD pEvent, LPWSTR pMapName, std::unique_ptr< EVENT_MAP_INFO > &info)
Retrieves information about the event map contained in the event.
Definition ETW.h:84
@@ -1146,11 +1154,12 @@
#define WINSTD_STACK_BUFFER_BYTES
Size of the stack buffer in bytes used for initial system function call.
Definition Common.h:94
static int vsprintf(std::basic_string< char, _Traits, _Ax > &str, const char *format, va_list arg)
Formats string using printf().
Definition Common.h:256
#define WINSTD_HANDLE_IMPL(C, T, INVAL)
Implements default constructors and operators to prevent their auto-generation by compiler.
Definition Common.h:164
-
static const REGHANDLE invalid
Invalid handle value.
Definition Common.h:1034
+
static const REGHANDLE invalid
Definition Common.h:1034
+
diff --git a/_g_d_i_8h_source.html b/_g_d_i_8h_source.html index 00a71e21..d80c59fd 100644 --- a/_g_d_i_8h_source.html +++ b/_g_d_i_8h_source.html @@ -3,13 +3,15 @@ - + WinStd: include/WinStd/GDI.h Source File + + @@ -32,18 +34,23 @@
- + + @@ -80,6 +87,7 @@
+
GDI.h
@@ -101,7 +109,7 @@
21 class gdi_handle : public handle<T, NULL>
22 {
- +
24
25 public:
@@ -114,9 +122,9 @@
36
37 protected:
-
43 void free_internal() noexcept override
+
43 void free_internal() noexcept override
44 {
- +
45 DeleteObject(m_h);
46 }
47 };
@@ -125,7 +133,7 @@
52 class icon : public handle<HICON, NULL>
53 {
- +
54 WINSTD_HANDLE_IMPL(icon, HICON, NULL)
55
56 public:
@@ -138,9 +146,9 @@
67
68 protected:
-
74 void free_internal() noexcept override
+
74 void free_internal() noexcept override
75 {
- +
76 DestroyIcon(m_h);
77 }
78 };
@@ -149,7 +157,7 @@
83 class dc : public handle<HDC, NULL>
84 {
- +
85 WINSTD_HANDLE_IMPL(dc, HDC, NULL)
86
87 public:
@@ -162,9 +170,9 @@
98
99 protected:
-
105 void free_internal() noexcept override
+
105 void free_internal() noexcept override
106 {
-
107 DeleteDC(m_h);
+
107 DeleteDC(m_h);
108 }
109 };
@@ -175,30 +183,30 @@
115 {
116 public:
- -
121 m_hwnd(NULL)
+
120 window_dc() noexcept :
+
121 m_hwnd(NULL)
122 {}
123
- - -
129 m_hwnd(hwnd)
+
127 window_dc(_In_opt_ handle_type h, _In_opt_ HWND hwnd) noexcept :
+ +
129 m_hwnd(hwnd)
130 {}
131
- -
136 handle<handle_type, NULL>(std::move(h)),
-
137 m_hwnd(h.m_hwnd)
+
135 window_dc(_Inout_ window_dc &&h) noexcept :
+
136 handle<handle_type, NULL>(std::move(h)),
+
137 m_hwnd(h.m_hwnd)
138 {}
139
- +
143 window_dc& operator=(_Inout_ window_dc &&h) noexcept
144 {
- -
146 m_hwnd = h.m_hwnd;
+ +
146 m_hwnd = h.m_hwnd;
147 return *this;
148 }
@@ -216,14 +224,14 @@
163
164 protected:
-
170 void free_internal() noexcept override
+
170 void free_internal() noexcept override
171 {
- +
172 ReleaseDC(m_hwnd, m_h);
173 }
174
175 protected:
- +
176 HWND m_hwnd;
177 };
178
@@ -235,9 +243,9 @@
186
187 public:
- -
194 m_hdc(hdc),
- +
193 dc_selector(_In_ HDC hdc, _In_ HGDIOBJ h) noexcept :
+
194 m_hdc(hdc),
+
195 m_orig(SelectObject(hdc, h))
196 {}
197
@@ -245,20 +253,20 @@
203 virtual ~dc_selector()
204 {
205 if (m_orig)
- +
206 SelectObject(m_hdc, m_orig);
207 }
208
- +
214 HGDIOBJ status() const noexcept
215 {
216 return m_orig;
217 }
218
219 protected:
- - +
220 HDC m_hdc;
+
221 HGDIOBJ m_orig;
222 };
223
@@ -276,11 +284,12 @@
void free_internal() noexcept override
Closes an open object handle.
Definition GDI.h:43
virtual ~gdi_handle()
Closes an open object handle.
Definition GDI.h:31
Base abstract template class to support generic object handle keeping.
Definition Common.h:1024
-
handle_type m_h
Object handle.
Definition Common.h:1276
+
handle() noexcept
Definition Common.h:1039
+
handle_type m_h
Definition Common.h:1276
+
HDC handle_type
Definition Common.h:1029
Windows HICON wrapper class.
Definition GDI.h:53
void free_internal() noexcept override
Closes an open object handle.
Definition GDI.h:74
virtual ~icon()
Closes an open object handle.
Definition GDI.h:62
-
Helper class for returning pointers to std::unique_ptr.
Definition Common.h:863
Device context wrapper class.
Definition GDI.h:115
HWND m_hwnd
Window handle.
Definition GDI.h:176
window_dc(handle_type h, HWND hwnd) noexcept
Initializes a device context from existing data.
Definition GDI.h:127
@@ -292,11 +301,12 @@
#define WINSTD_NONCOPYABLE(C)
Declares a class as non-copyable.
Definition Common.h:67
#define WINSTD_NONMOVABLE(C)
Declares a class as non-movable.
Definition Common.h:75
#define WINSTD_HANDLE_IMPL(C, T, INVAL)
Implements default constructors and operators to prevent their auto-generation by compiler.
Definition Common.h:164
-
static const T invalid
Invalid handle value.
Definition Common.h:1034
+
static const T invalid
Definition Common.h:1034
+
diff --git a/_m_s_i_8h_source.html b/_m_s_i_8h_source.html index ce9b89a3..8e6b0ed5 100644 --- a/_m_s_i_8h_source.html +++ b/_m_s_i_8h_source.html @@ -3,13 +3,15 @@ - + WinStd: include/WinStd/MSI.h Source File + + @@ -32,18 +34,23 @@
- + + @@ -80,6 +87,7 @@
+
MSI.h
@@ -393,7 +401,8 @@
+
diff --git a/_s_d_d_l_8h_source.html b/_s_d_d_l_8h_source.html index f41f43bf..19877770 100644 --- a/_s_d_d_l_8h_source.html +++ b/_s_d_d_l_8h_source.html @@ -3,13 +3,15 @@ - + WinStd: include/WinStd/SDDL.h Source File + + @@ -32,18 +34,23 @@
- + + @@ -80,6 +87,7 @@ +
SDDL.h
@@ -105,42 +113,42 @@
21
22 public:
- +
27 {
-
28 nLength = sizeof(SECURITY_ATTRIBUTES);
- - +
28 nLength = sizeof(SECURITY_ATTRIBUTES);
+
29 lpSecurityDescriptor = NULL;
+
30 bInheritHandle = FALSE;
31 }
32
- +
37 {
-
38 nLength = sizeof(SECURITY_ATTRIBUTES);
-
39 lpSecurityDescriptor = a.lpSecurityDescriptor;
-
40 bInheritHandle = a.bInheritHandle;
-
41 a.lpSecurityDescriptor = NULL;
+
38 nLength = sizeof(SECURITY_ATTRIBUTES);
+
39 lpSecurityDescriptor = a.lpSecurityDescriptor;
+
40 bInheritHandle = a.bInheritHandle;
+
41 a.lpSecurityDescriptor = NULL;
42 }
43
48 {
- - +
49 if (lpSecurityDescriptor)
+
50 LocalFree(lpSecurityDescriptor);
51 }
52
- +
57 {
-
58 if (this != &a) {
-
59 nLength = sizeof(SECURITY_ATTRIBUTES);
- - -
62 lpSecurityDescriptor = a.lpSecurityDescriptor;
-
63 bInheritHandle = a.bInheritHandle;
-
64 a.lpSecurityDescriptor = NULL;
+
58 if (this != &a) {
+
59 nLength = sizeof(SECURITY_ATTRIBUTES);
+
60 if (lpSecurityDescriptor)
+
61 LocalFree(lpSecurityDescriptor);
+
62 lpSecurityDescriptor = a.lpSecurityDescriptor;
+
63 bInheritHandle = a.bInheritHandle;
+
64 a.lpSecurityDescriptor = NULL;
65 }
66 return *this;
67 }
@@ -184,7 +192,6 @@
108
109#pragma warning(pop)
110
-
Helper class for returning pointers to std::unique_ptr.
Definition Common.h:863
Definition SDDL.h:19
security_attributes(security_attributes &&a) noexcept
Moves an existing SECURITY_ATTRIBUTES.
Definition SDDL.h:36
~security_attributes()
Destroys the SECURITY_ATTRIBUTES.
Definition SDDL.h:47
@@ -196,7 +203,8 @@
+ diff --git a/_sec_8h_source.html b/_sec_8h_source.html index 0ac28cd2..85e1b19f 100644 --- a/_sec_8h_source.html +++ b/_sec_8h_source.html @@ -3,13 +3,15 @@ - + WinStd: include/WinStd/Sec.h Source File + + @@ -32,18 +34,23 @@ - + + @@ -80,6 +87,7 @@ +
Sec.h
@@ -126,295 +134,295 @@
49template<class _Traits, class _Ax>
50static BOOLEAN GetUserNameExW(_In_ EXTENDED_NAME_FORMAT NameFormat, _Inout_ std::basic_string<wchar_t, _Traits, _Ax> &sName)
51{
-
52 assert(0); // TODO: Test this code.
-
53
-
54 wchar_t szStackBuffer[WINSTD_STACK_BUFFER_BYTES/sizeof(wchar_t)];
-
55 ULONG ulSize = _countof(szStackBuffer);
-
56
-
57 // Try with stack buffer first.
-
58 if (::GetUserNameExW(NameFormat, szStackBuffer, &ulSize)) {
-
59 // Copy from stack.
-
60 sName.assign(szStackBuffer, ulSize);
-
61 return TRUE;
-
62 }
-
63 if (::GetLastError() == ERROR_MORE_DATA) {
-
64 // Allocate buffer on heap and retry.
-
65 sName.resize(ulSize - 1);
-
66 if (::GetUserNameExW(NameFormat, &sName[0], &ulSize))
-
67 return TRUE;
-
68 }
-
69 return FALSE;
-
70}
+
52 wchar_t szStackBuffer[WINSTD_STACK_BUFFER_BYTES/sizeof(wchar_t)];
+
53 ULONG ulSize = _countof(szStackBuffer);
+
54
+
55 // Try with stack buffer first.
+
56 if (::GetUserNameExW(NameFormat, szStackBuffer, &ulSize)) {
+
57 // Copy from stack.
+
58 sName.assign(szStackBuffer, ulSize);
+
59 return TRUE;
+
60 }
+
61 if (::GetLastError() == ERROR_MORE_DATA) {
+
62 // Allocate buffer on heap and retry.
+
63 sName.resize(ulSize - 1);
+
64 if (::GetUserNameExW(NameFormat, &sName[0], &ulSize))
+
65 return TRUE;
+
66 }
+
67 return FALSE;
+
68}
+
69
+
70#endif
71
-
72#endif
73
-
75
-
76namespace winstd
-
77{
-
80
-
-
84 class sec_credentials : public handle<PCredHandle, NULL>
-
85 {
- -
87
-
88 public:
-
- -
93 {
-
94 m_expires.QuadPart = -1;
-
95 }
+
74namespace winstd
+
75{
+
78
+
+
82 class sec_credentials : public handle<PCredHandle, NULL>
+
83 {
+ +
85
+
86 public:
+
+ +
91 {
+
92 m_expires.QuadPart = -1;
+
93 }
-
96
-
- - -
105 handle(h)
-
106 {}
+
94
+
+
101 sec_credentials(_In_opt_ handle_type h, _In_ const TimeStamp expires) :
+
102 m_expires(expires),
+
103 handle(h)
+
104 {}
-
107
-
- -
114 m_expires(std::move(h.m_expires)),
-
115 handle<PCredHandle, NULL>(std::move(h))
-
116 {}
+
105
+
+
111 sec_credentials(_Inout_ sec_credentials &&h) noexcept :
+
112 m_expires(std::move(h.m_expires)),
+
113 handle<PCredHandle, NULL>(std::move(h))
+
114 {}
-
117
-
- -
124 {
-
125 if (m_h != invalid)
- -
127 }
+
115
+
+ +
122 {
+
123 if (m_h != invalid)
+ +
125 }
-
128
-
- -
135 {
-
136 if (this != std::addressof(h)) {
-
137 *(handle<handle_type, NULL>*)this = std::move(h);
-
138 m_expires = std::move(h.m_expires);
-
139 }
-
140 return *this;
-
141 }
+
126
+
+ +
133 {
+
134 if (this != std::addressof(h)) {
+
135 *(handle<handle_type, NULL>*)this = std::move(h);
+
136 m_expires = std::move(h.m_expires);
+
137 }
+
138 return *this;
+
139 }
-
142
-
- - - -
155 _In_ unsigned long fCredentialUse,
-
156 _In_opt_ void *pvLogonId,
-
157 _In_opt_ void *pAuthData,
- - -
160 {
- - - -
164 if (SUCCEEDED(res)) {
-
165 attach(h);
-
166 m_expires = exp;
-
167 } else
-
168 delete h;
-
169 return res;
-
170 }
+
140
+
+
150 SECURITY_STATUS acquire(
+
151 _In_opt_ LPTSTR pszPrincipal,
+
152 _In_ LPTSTR pszPackage,
+
153 _In_ unsigned long fCredentialUse,
+
154 _In_opt_ void *pvLogonId,
+
155 _In_opt_ void *pAuthData,
+
156 _In_opt_ SEC_GET_KEY_FN pGetKeyFn = NULL,
+
157 _In_opt_ void *pvGetKeyArgument = NULL)
+
158 {
+
159 handle_type h = new CredHandle;
+
160 TimeStamp exp;
+
161 SECURITY_STATUS res = AcquireCredentialsHandle(pszPrincipal, pszPackage, fCredentialUse, pvLogonId, pAuthData, pGetKeyFn, pvGetKeyArgument, h, &exp);
+
162 if (SUCCEEDED(res)) {
+
163 attach(h);
+
164 m_expires = exp;
+
165 } else
+
166 delete h;
+
167 return res;
+
168 }
-
171
-
172 protected:
-
-
178 void free_internal() noexcept override
-
179 {
- -
181 delete m_h;
-
182 }
+
169
+
170 protected:
+
+
176 void free_internal() noexcept override
+
177 {
+
178 FreeCredentialsHandle(m_h);
+
179 delete m_h;
+
180 }
-
183
-
184 public:
- -
186 };
+
181
+
182 public:
+
183 TimeStamp m_expires;
+
184 };
-
187
-
-
191 class sec_context : public handle<PCtxtHandle, NULL>
-
192 {
-
193 public:
-
- -
198 m_attrib(0),
- -
200 {
-
201 m_expires.QuadPart = -1;
-
202 }
+
185
+
+
189 class sec_context : public handle<PCtxtHandle, NULL>
+
190 {
+
191 public:
+
+ +
196 m_attrib(0),
+
197 handle<PCtxtHandle, NULL>()
+
198 {
+
199 m_expires.QuadPart = -1;
+
200 }
-
203
-
- -
210 m_attrib (std::move(h.m_attrib )),
-
211 m_expires(std::move(h.m_expires)),
-
212 handle<PCtxtHandle, NULL>(std::move(h))
-
213 {}
+
201
+
+
207 sec_context(_Inout_ sec_context &&h) noexcept :
+
208 m_attrib (std::move(h.m_attrib )),
+
209 m_expires(std::move(h.m_expires)),
+
210 handle<PCtxtHandle, NULL>(std::move(h))
+
211 {}
-
214
-
-
220 virtual ~sec_context()
-
221 {
-
222 if (m_h != invalid)
- -
224 }
+
212
+
+
218 virtual ~sec_context()
+
219 {
+
220 if (m_h != invalid)
+ +
222 }
-
225
-
- -
232 {
-
233 if (this != std::addressof(h)) {
-
234 *(handle<handle_type, NULL>*)this = std::move(h);
-
235 m_attrib = std::move(h.m_attrib);
-
236 m_expires = std::move(h.m_expires);
-
237 }
-
238 return *this;
-
239 }
+
223
+
+
229 sec_context& operator=(_Inout_ sec_context &&h) noexcept
+
230 {
+
231 if (this != std::addressof(h)) {
+
232 *(handle<handle_type, NULL>*)this = std::move(h);
+
233 m_attrib = std::move(h.m_attrib);
+
234 m_expires = std::move(h.m_expires);
+
235 }
+
236 return *this;
+
237 }
-
240
-
- - - - - - - -
257 {
- -
259 h->dwUpper = 0;
-
260 h->dwLower = 0;
-
261 ULONG attr;
- - -
264 if (SUCCEEDED(res)) {
-
265 attach(h);
-
266 m_attrib = attr;
-
267 m_expires = exp;
-
268 } else
-
269 delete h;
-
270 return res;
-
271 }
+
238
+
+
248 SECURITY_STATUS initialize(
+
249 _In_opt_ PCredHandle phCredential,
+
250 _In_opt_z_ LPCTSTR pszTargetName,
+
251 _In_ ULONG fContextReq,
+
252 _In_ ULONG TargetDataRep,
+
253 _In_opt_ PSecBufferDesc pInput,
+
254 _Inout_opt_ PSecBufferDesc pOutput)
+
255 {
+
256 handle_type h = new CtxtHandle;
+
257 h->dwUpper = 0;
+
258 h->dwLower = 0;
+
259 ULONG attr;
+
260 TimeStamp exp;
+
261 SECURITY_STATUS res = InitializeSecurityContext(phCredential, NULL, const_cast<LPTSTR>(pszTargetName), fContextReq, 0, TargetDataRep, pInput, 0, h, pOutput, &attr, &exp);
+
262 if (SUCCEEDED(res)) {
+
263 attach(h);
+
264 m_attrib = attr;
+
265 m_expires = exp;
+
266 } else
+
267 delete h;
+
268 return res;
+
269 }
-
272
-
- - - - - - - -
289 {
- -
291 }
+
270
+
+
280 SECURITY_STATUS process(
+
281 _In_opt_ PCredHandle phCredential,
+
282 _In_opt_z_ LPCTSTR pszTargetName,
+
283 _In_ ULONG fContextReq,
+
284 _In_ ULONG TargetDataRep,
+
285 _In_opt_ PSecBufferDesc pInput,
+
286 _Inout_opt_ PSecBufferDesc pOutput)
+
287 {
+
288 return InitializeSecurityContext(phCredential, m_h, const_cast<LPTSTR>(pszTargetName), fContextReq, 0, TargetDataRep, pInput, 0, NULL, pOutput, &m_attrib, &m_expires);
+
289 }
-
292
-
293 protected:
-
-
299 void free_internal() noexcept override
-
300 {
- -
302 delete m_h;
-
303 }
+
290
+
291 protected:
+
+
297 void free_internal() noexcept override
+
298 {
+
299 DeleteSecurityContext(m_h);
+
300 delete m_h;
+
301 }
-
304
-
305 public:
- - -
308 };
+
302
+
303 public:
+
304 ULONG m_attrib;
+
305 TimeStamp m_expires;
+
306 };
-
309
-
-
313 class sec_buffer_desc : public SecBufferDesc
-
314 {
-
315 public:
-
- -
320 {
- -
322 cBuffers = count;
-
323 pBuffers = buf;
-
324 }
+
307
+
+
311 class sec_buffer_desc : public SecBufferDesc
+
312 {
+
313 public:
+
+
317 sec_buffer_desc(_Inout_count_(count) PSecBuffer buf, ULONG count, _In_ ULONG version = SECBUFFER_VERSION)
+
318 {
+
319 ulVersion = version;
+
320 cBuffers = count;
+
321 pBuffers = buf;
+
322 }
-
325
-
- -
332 {
-
333 for (ULONG i = 0; i < cBuffers; i++) {
-
334 if (pBuffers[i].pvBuffer)
- -
336 }
-
337 }
+
323
+
+ +
330 {
+
331 for (ULONG i = 0; i < cBuffers; i++) {
+
332 if (pBuffers[i].pvBuffer)
+
333 FreeContextBuffer(pBuffers[i].pvBuffer);
+
334 }
+
335 }
-
338 };
+
336 };
+
337
339
-
341
-
344
-
-
350 class sec_runtime_error : public num_runtime_error<SECURITY_STATUS>
-
351 {
-
352 public:
-
- -
360 {}
+
342
+
+
348 class sec_runtime_error : public num_runtime_error<SECURITY_STATUS>
+
349 {
+
350 public:
+
+
357 sec_runtime_error(_In_ error_type num, _In_ const std::string& msg) : num_runtime_error<SECURITY_STATUS>(num, msg)
+
358 {}
-
361
-
- -
369 {}
+
359
+
+
366 sec_runtime_error(_In_ error_type num, _In_opt_z_ const char *msg = nullptr) : num_runtime_error<SECURITY_STATUS>(num, msg)
+
367 {}
-
370
-
- -
377 {}
+
368
+
+
374 sec_runtime_error(const sec_runtime_error &other) : num_runtime_error<SECURITY_STATUS>(other)
+
375 {}
-
378 };
+
376 };
-
379
-
381}
+
377
+
379}
Base abstract template class to support generic object handle keeping.
Definition Common.h:1024
-
handle_type m_h
Object handle.
Definition Common.h:1276
-
void attach(handle_type h) noexcept
Sets a new object handle for the class.
Definition Common.h:1239
+
handle_type m_h
Definition Common.h:1276
+
void attach(handle_type h) noexcept
Definition Common.h:1239
+
PCredHandle handle_type
Definition Common.h:1029
Numerical runtime error.
Definition Common.h:1481
-
Helper class for returning pointers to std::unique_ptr.
Definition Common.h:863
-
SecBufferDesc wrapper class.
Definition Sec.h:314
-
virtual ~sec_buffer_desc()
Frees the security buffer descriptor.
Definition Sec.h:331
-
sec_buffer_desc(PSecBuffer buf, ULONG count, ULONG version=SECBUFFER_VERSION)
Initializes security buffer descriptor.
Definition Sec.h:319
-
PCtxtHandle wrapper class.
Definition Sec.h:192
-
sec_context(sec_context &&h) noexcept
Move constructor.
Definition Sec.h:209
-
SECURITY_STATUS process(PCredHandle phCredential, LPCTSTR pszTargetName, ULONG fContextReq, ULONG TargetDataRep, PSecBufferDesc pInput, PSecBufferDesc pOutput)
Continue security context.
Definition Sec.h:282
-
virtual ~sec_context()
Frees the security context.
Definition Sec.h:220
-
sec_context()
Initializes a new class instance with the object handle set to NULL.
Definition Sec.h:197
-
SECURITY_STATUS initialize(PCredHandle phCredential, LPCTSTR pszTargetName, ULONG fContextReq, ULONG TargetDataRep, PSecBufferDesc pInput, PSecBufferDesc pOutput)
Initializes security context.
Definition Sec.h:250
-
ULONG m_attrib
Context attributes.
Definition Sec.h:306
-
TimeStamp m_expires
Context expiration time.
Definition Sec.h:307
-
sec_context & operator=(sec_context &&h) noexcept
Move assignment.
Definition Sec.h:231
-
void free_internal() noexcept override
Frees the security context.
Definition Sec.h:299
-
PCredHandle wrapper class.
Definition Sec.h:85
-
sec_credentials()
Initializes a new class instance with the object handle set to NULL.
Definition Sec.h:92
-
void free_internal() noexcept override
Frees the security credentials.
Definition Sec.h:178
-
TimeStamp m_expires
Credentials expiration time.
Definition Sec.h:185
-
sec_credentials(sec_credentials &&h) noexcept
Move constructor.
Definition Sec.h:113
-
virtual ~sec_credentials()
Frees the security credentials.
Definition Sec.h:123
-
sec_credentials(handle_type h, const TimeStamp expires)
Initializes a new class with an already available object handle.
Definition Sec.h:103
-
SECURITY_STATUS acquire(LPTSTR pszPrincipal, LPTSTR pszPackage, unsigned long fCredentialUse, void *pvLogonId, void *pAuthData, SEC_GET_KEY_FN pGetKeyFn=NULL, void *pvGetKeyArgument=NULL)
Acquires the security credentials.
Definition Sec.h:152
-
sec_credentials & operator=(sec_credentials &&h) noexcept
Move assignment.
Definition Sec.h:134
-
Security runtime error.
Definition Sec.h:351
-
sec_runtime_error(error_type num, const char *msg=nullptr)
Constructs an exception.
Definition Sec.h:368
-
sec_runtime_error(const sec_runtime_error &other)
Copies an exception.
Definition Sec.h:376
-
sec_runtime_error(error_type num, const std::string &msg)
Constructs an exception.
Definition Sec.h:359
+
SECURITY_STATUS error_type
Definition Common.h:1483
+
SecBufferDesc wrapper class.
Definition Sec.h:312
+
virtual ~sec_buffer_desc()
Frees the security buffer descriptor.
Definition Sec.h:329
+
sec_buffer_desc(PSecBuffer buf, ULONG count, ULONG version=SECBUFFER_VERSION)
Initializes security buffer descriptor.
Definition Sec.h:317
+
PCtxtHandle wrapper class.
Definition Sec.h:190
+
sec_context(sec_context &&h) noexcept
Move constructor.
Definition Sec.h:207
+
SECURITY_STATUS process(PCredHandle phCredential, LPCTSTR pszTargetName, ULONG fContextReq, ULONG TargetDataRep, PSecBufferDesc pInput, PSecBufferDesc pOutput)
Continue security context.
Definition Sec.h:280
+
virtual ~sec_context()
Frees the security context.
Definition Sec.h:218
+
sec_context()
Initializes a new class instance with the object handle set to NULL.
Definition Sec.h:195
+
SECURITY_STATUS initialize(PCredHandle phCredential, LPCTSTR pszTargetName, ULONG fContextReq, ULONG TargetDataRep, PSecBufferDesc pInput, PSecBufferDesc pOutput)
Initializes security context.
Definition Sec.h:248
+
ULONG m_attrib
Context attributes.
Definition Sec.h:304
+
TimeStamp m_expires
Context expiration time.
Definition Sec.h:305
+
sec_context & operator=(sec_context &&h) noexcept
Move assignment.
Definition Sec.h:229
+
void free_internal() noexcept override
Frees the security context.
Definition Sec.h:297
+
PCredHandle wrapper class.
Definition Sec.h:83
+
sec_credentials()
Initializes a new class instance with the object handle set to NULL.
Definition Sec.h:90
+
void free_internal() noexcept override
Frees the security credentials.
Definition Sec.h:176
+
TimeStamp m_expires
Credentials expiration time.
Definition Sec.h:183
+
sec_credentials(sec_credentials &&h) noexcept
Move constructor.
Definition Sec.h:111
+
virtual ~sec_credentials()
Frees the security credentials.
Definition Sec.h:121
+
sec_credentials(handle_type h, const TimeStamp expires)
Initializes a new class with an already available object handle.
Definition Sec.h:101
+
SECURITY_STATUS acquire(LPTSTR pszPrincipal, LPTSTR pszPackage, unsigned long fCredentialUse, void *pvLogonId, void *pAuthData, SEC_GET_KEY_FN pGetKeyFn=NULL, void *pvGetKeyArgument=NULL)
Acquires the security credentials.
Definition Sec.h:150
+
sec_credentials & operator=(sec_credentials &&h) noexcept
Move assignment.
Definition Sec.h:132
+
Security runtime error.
Definition Sec.h:349
+
sec_runtime_error(error_type num, const char *msg=nullptr)
Constructs an exception.
Definition Sec.h:366
+
sec_runtime_error(const sec_runtime_error &other)
Copies an exception.
Definition Sec.h:374
+
sec_runtime_error(error_type num, const std::string &msg)
Constructs an exception.
Definition Sec.h:357
#define WINSTD_NONCOPYABLE(C)
Declares a class as non-copyable.
Definition Common.h:67
#define WINSTD_STACK_BUFFER_BYTES
Size of the stack buffer in bytes used for initial system function call.
Definition Common.h:94
-
static const PCredHandle invalid
Invalid handle value.
Definition Common.h:1034
+
static const PCredHandle invalid
Definition Common.h:1034
+
diff --git a/_setup_a_p_i_8h_source.html b/_setup_a_p_i_8h_source.html index bd1497b6..54d75637 100644 --- a/_setup_a_p_i_8h_source.html +++ b/_setup_a_p_i_8h_source.html @@ -3,13 +3,15 @@ - + WinStd: include/WinStd/SetupAPI.h Source File + + @@ -32,18 +34,23 @@
- + + @@ -80,6 +87,7 @@
+
SetupAPI.h
@@ -102,7 +110,7 @@
25 class setup_device_info_list : public handle<HDEVINFO, INVALID_HANDLE_VALUE>
26 {
- +
27 WINSTD_HANDLE_IMPL(setup_device_info_list, HDEVINFO, INVALID_HANDLE_VALUE)
28
29 public:
@@ -115,9 +123,9 @@
40
41 protected:
-
47 void free_internal() noexcept override
+
47 void free_internal() noexcept override
48 {
- +
49 SetupDiDestroyDeviceInfoList(m_h);
50 }
51 };
@@ -132,14 +140,14 @@
61 public:
- - - - - - +
68 _In_ HDEVINFO DeviceInfoSet,
+
69 _Inout_opt_ PSP_DEVINFO_DATA DeviceInfoData,
+
70 _In_ DWORD DriverType) noexcept :
+
71 m_DeviceInfoSet (DeviceInfoSet),
+
72 m_DeviceInfoData(DeviceInfoData),
+
73 m_DriverType (DriverType)
74 {
- +
75 m_result = SetupDiBuildDriverInfoList(m_DeviceInfoSet, m_DeviceInfoData, m_DriverType);
76 }
77
@@ -147,29 +155,28 @@
84 {
85 if (m_result)
- +
86 SetupDiDestroyDriverInfoList(m_DeviceInfoSet, m_DeviceInfoData, m_DriverType);
87 }
88
- +
94 BOOL status() const noexcept
95 {
96 return m_result;
97 }
98
99 protected:
- - - -
104 BOOL m_result;
+
101 HDEVINFO m_DeviceInfoSet;
+
102 PSP_DEVINFO_DATA m_DeviceInfoData;
+
103 DWORD m_DriverType;
+
104 BOOL m_result;
106 };
107
109}
Base abstract template class to support generic object handle keeping.
Definition Common.h:1024
-
handle_type m_h
Object handle.
Definition Common.h:1276
-
Helper class for returning pointers to std::unique_ptr.
Definition Common.h:863
+
handle_type m_h
Definition Common.h:1276
HDEVINFO wrapper class.
Definition SetupAPI.h:26
virtual ~setup_device_info_list()
Frees the device information set.
Definition SetupAPI.h:35
void free_internal() noexcept override
Frees the device information set.
Definition SetupAPI.h:47
@@ -180,11 +187,12 @@
#define WINSTD_NONCOPYABLE(C)
Declares a class as non-copyable.
Definition Common.h:67
#define WINSTD_NONMOVABLE(C)
Declares a class as non-movable.
Definition Common.h:75
#define WINSTD_HANDLE_IMPL(C, T, INVAL)
Implements default constructors and operators to prevent their auto-generation by compiler.
Definition Common.h:164
-
static const HDEVINFO invalid
Invalid handle value.
Definition Common.h:1034
+
static const HDEVINFO invalid
Definition Common.h:1034
+
diff --git a/_shell_8h_source.html b/_shell_8h_source.html index 79e27786..3e64787e 100644 --- a/_shell_8h_source.html +++ b/_shell_8h_source.html @@ -3,13 +3,15 @@ - + WinStd: include/WinStd/Shell.h Source File + + @@ -32,18 +34,23 @@
- + + @@ -80,6 +87,7 @@
+
Shell.h
@@ -171,7 +179,8 @@
+
diff --git a/_w_l_a_n_8h_source.html b/_w_l_a_n_8h_source.html index 44b8d19b..a6b64036 100644 --- a/_w_l_a_n_8h_source.html +++ b/_w_l_a_n_8h_source.html @@ -3,13 +3,15 @@ - + WinStd: include/WinStd/WLAN.h Source File + + @@ -32,18 +34,23 @@
- + + @@ -80,6 +87,7 @@
+
WLAN.h
@@ -142,40 +150,40 @@
74 template <class _Ty> struct WlanFreeMemory_delete
75 {
- +
77
82
-
86 template <class _Ty2> WlanFreeMemory_delete(const WlanFreeMemory_delete<_Ty2>&) {}
+
86 template <class _Ty2> WlanFreeMemory_delete(const WlanFreeMemory_delete<_Ty2>&) {}
87
-
91 void operator()(_Ty *_Ptr) const
+
91 void operator()(_Ty *_Ptr) const
92 {
- +
93 WlanFreeMemory(_Ptr);
94 }
95 };
96
-
100 template <class _Ty> struct WlanFreeMemory_delete<_Ty[]>
+
100 template <class _Ty> struct WlanFreeMemory_delete<_Ty[]>
101 {
- +
103
108
-
112 void operator()(_Ty *_Ptr) const
+
112 void operator()(_Ty *_Ptr) const
113 {
- +
114 WlanFreeMemory(_Ptr);
115 }
116
120 template<class _Other>
-
121 void operator()(_Other *) const
+
121 void operator()(_Other *) const
122 {
- +
123 WlanFreeMemory(_Ptr);
124 }
125 };
@@ -184,7 +192,7 @@
132 class wlan_handle : public handle<HANDLE, NULL>
133 {
- +
134 WINSTD_HANDLE_IMPL(wlan_handle, HANDLE, NULL)
135
136 public:
@@ -197,9 +205,9 @@
147
148 protected:
-
154 void free_internal() noexcept override
+
154 void free_internal() noexcept override
155 {
- +
156 WlanCloseHandle(m_h, NULL);
157 }
158 };
@@ -225,28 +233,28 @@
184
Base abstract template class to support generic object handle keeping.
Definition Common.h:1024
-
handle_type m_h
Object handle.
Definition Common.h:1276
-
Helper class for returning pointers to std::unique_ptr.
Definition Common.h:863
+
handle_type m_h
Definition Common.h:1276
WLAN handle wrapper.
Definition WLAN.h:133
virtual ~wlan_handle()
Closes a connection to the server.
Definition WLAN.h:142
void free_internal() noexcept override
Closes a connection to the server.
Definition WLAN.h:154
#define WINSTD_HANDLE_IMPL(C, T, INVAL)
Implements default constructors and operators to prevent their auto-generation by compiler.
Definition Common.h:164
-
static const HANDLE invalid
Invalid handle value.
Definition Common.h:1034
+
static const HANDLE invalid
Definition Common.h:1034
static DWORD WlanOpenHandle(DWORD dwClientVersion, PVOID pReserved, PDWORD pdwNegotiatedVersion, winstd::wlan_handle &handle)
Opens a connection to the server.
Definition WLAN.h:172
static DWORD WlanReasonCodeToString(DWORD dwReasonCode, std::basic_string< wchar_t, _Traits, _Ax > &sValue, __reserved PVOID pReserved)
Retrieves a string that describes a specified reason code and stores it in a std::wstring string.
Definition WLAN.h:34
+
WlanFreeMemory_delete< _Ty > _Myt
This type.
Definition WLAN.h:102
WlanFreeMemory_delete()
Default construct.
Definition WLAN.h:107
void operator()(_Other *) const
Delete a pointer of another type.
Definition WLAN.h:121
-
WlanFreeMemory_delete< _Ty > _Myt
This type.
Definition WLAN.h:102
void operator()(_Ty *_Ptr) const
Delete a pointer.
Definition WLAN.h:112
Deleter for unique_ptr using WlanFreeMemory.
Definition WLAN.h:75
WlanFreeMemory_delete()
Default construct.
Definition WLAN.h:81
void operator()(_Ty *_Ptr) const
Delete a pointer.
Definition WLAN.h:91
-
WlanFreeMemory_delete< _Ty > _Myt
This type.
Definition WLAN.h:76
WlanFreeMemory_delete(const WlanFreeMemory_delete< _Ty2 > &)
Construct from another WlanFreeMemory_delete.
Definition WLAN.h:86
+
WlanFreeMemory_delete< _Ty > _Myt
This type.
Definition WLAN.h:76
+
diff --git a/_win_8h_source.html b/_win_8h_source.html index 5a169e0b..0b3ef550 100644 --- a/_win_8h_source.html +++ b/_win_8h_source.html @@ -3,13 +3,15 @@ - + WinStd: include/WinStd/Win.h Source File + + @@ -32,18 +34,23 @@
- + + @@ -80,6 +87,7 @@
+
Win.h
@@ -654,7 +662,7 @@
632 int cch = ::NormalizeString(NormForm, lpSrcString, cwSrcLength, szStackBuffer, _countof(szStackBuffer));
633 if (cch > 0) {
634 // Copy from stack.
-
635 sDstString.assign(szStackBuffer, cwSrcLength != -1 ? wcsnlen(szStackBuffer, cch) : (size_t)cch - 1);
+
635 sDstString.assign(szStackBuffer, cwSrcLength != -1 ? wcsnlen(szStackBuffer, cch) : (size_t)cch - 1);
636 } else {
637 switch (::GetLastError()) {
638 case ERROR_INSUFFICIENT_BUFFER:
@@ -664,7 +672,7 @@
642 sDstString.resize((size_t)cch - 1);
643 cch = ::NormalizeString(NormForm, lpSrcString, cwSrcLength, &sDstString[0], cch);
644 if (cch > 0) {
-
645 sDstString.resize(cwSrcLength != -1 ? wcsnlen(&sDstString[0], cch) : (size_t)cch - 1);
+
645 sDstString.resize(cwSrcLength != -1 ? wcsnlen(&sDstString[0], cch) : (size_t)cch - 1);
646 break;
647 }
648 if (::GetLastError() != ERROR_INSUFFICIENT_BUFFER) {
@@ -995,7 +1003,7 @@
1011 class win_handle : public handle<HANDLE, INVALID>
1012 {
- +
1013 WINSTD_HANDLE_IMPL(win_handle, HANDLE, INVALID)
1014
1015 public:
@@ -1008,9 +1016,9 @@
1026
1027 protected:
-
1033 void free_internal() noexcept override
+
1033 void free_internal() noexcept override
1034 {
- +
1035 CloseHandle(m_h);
1036 }
1037 };
@@ -1019,7 +1027,7 @@
1044 class library : public handle<HMODULE, NULL>
1045 {
- +
1046 WINSTD_HANDLE_IMPL(library, HMODULE, NULL)
1047
1048 public:
@@ -1032,21 +1040,21 @@
1059
1060 protected:
-
1066 void free_internal() noexcept override
+
1066 void free_internal() noexcept override
1067 {
- +
1068 FreeLibrary(m_h);
1069 }
1070 };
1071
- +
1078
- +
1085
- +
1092
- +
1099
@@ -1056,15 +1064,15 @@
1107
1108 public:
- +
1117 mutex_locker(_In_ HANDLE hMutex, _In_ DWORD dwMilliseconds = INFINITE) : m_h(hMutex)
1118 {
-
1119 switch (WaitForSingleObject(m_h, dwMilliseconds)) {
-
1120 case WAIT_OBJECT_0:
-
1121 case WAIT_ABANDONED:
+
1119 switch (WaitForSingleObject(m_h, dwMilliseconds)) {
+
1120 case WAIT_OBJECT_0:
+
1121 case WAIT_ABANDONED:
1122 return;
-
1123 case WAIT_TIMEOUT:
+
1123 case WAIT_TIMEOUT:
1124 throw std::runtime_error("timeout");
-
1125 case WAIT_FAILED:
+
1125 case WAIT_FAILED:
1126 throw win_runtime_error("WaitForSingleObject failed");
1127 }
1128 }
@@ -1073,33 +1081,33 @@
1136 {
-
1137 ReleaseMutex(m_h);
+
1137 ReleaseMutex(m_h);
1138 }
1139
1140 protected:
-
1141 HANDLE m_h;
+
1141 HANDLE m_h;
1142 };
1143
- +
1151
- +
1158
1163 {
-
1167 void operator()(void* _Ptr) const
+
1167 void operator()(void* _Ptr) const
1168 {
-
1169 if (!UnmapViewOfFile(_Ptr))
+
1169 if (!UnmapViewOfFile(_Ptr))
1170 throw win_runtime_error("UnmapViewOfFile failed");
1171 }
1172 };
1173
- +
1181
@@ -1109,35 +1117,35 @@
1189
1190 public:
- +
1197 {
- +
1198 InitializeCriticalSection(&m_data);
1199 }
1200
1207 {
- +
1208 DeleteCriticalSection(&m_data);
1209 }
1210
- +
1216 operator LPCRITICAL_SECTION() noexcept
1217 {
1218 return &m_data;
1219 }
1220
1221 protected:
- +
1222 CRITICAL_SECTION m_data;
1223 };
1224
1230 class find_file : public handle<HANDLE, INVALID_HANDLE_VALUE>
1231 {
- +
1232 WINSTD_HANDLE_IMPL(find_file, HANDLE, INVALID_HANDLE_VALUE)
1233
1234 public:
@@ -1150,9 +1158,9 @@
1245
1246 protected:
-
1252 void free_internal() noexcept override
+
1252 void free_internal() noexcept override
1253 {
-
1254 FindClose(m_h);
+
1254 FindClose(m_h);
1255 }
1256 };
@@ -1161,7 +1169,7 @@
1263 class heap : public handle<HANDLE, NULL>
1264 {
- +
1265 WINSTD_HANDLE_IMPL(heap, HANDLE, NULL)
1266
1267 public:
@@ -1173,51 +1181,51 @@
1278
- +
1286 bool enumerate() noexcept
1287 {
-
1288 assert(m_h != invalid);
+
1288 assert(m_h != invalid);
1289
-
1290 bool found = false;
+
1290 bool found = false;
1291
1292 // Lock the heap for exclusive access.
-
1293 HeapLock(m_h);
+
1293 HeapLock(m_h);
1294
- -
1296 e.lpData = NULL;
-
1297 while (HeapWalk(m_h, &e) != FALSE) {
-
1298 if ((e.wFlags & PROCESS_HEAP_ENTRY_BUSY) != 0) {
+
1295 PROCESS_HEAP_ENTRY e;
+
1296 e.lpData = NULL;
+
1297 while (HeapWalk(m_h, &e) != FALSE) {
+
1298 if ((e.wFlags & PROCESS_HEAP_ENTRY_BUSY) != 0) {
-
1300 _T("Allocated block%s%s\n")
-
1301 _T(" Data portion begins at: %#p\n Size: %d bytes\n")
-
1302 _T(" Overhead: %d bytes\n Region index: %d\n"),
-
1303 (e.wFlags & PROCESS_HEAP_ENTRY_MOVEABLE) != 0 ? tstring_printf(_T(", movable with HANDLE %#p"), e.Block.hMem).c_str() : _T(""),
-
1304 (e.wFlags & PROCESS_HEAP_ENTRY_DDESHARE) != 0 ? _T(", DDESHARE") : _T(""),
-
1305 e.lpData,
-
1306 e.cbData,
-
1307 e.cbOverhead,
-
1308 e.iRegionIndex);
+
1300 _T("Allocated block%s%s\n")
+
1301 _T(" Data portion begins at: %#p\n Size: %d bytes\n")
+
1302 _T(" Overhead: %d bytes\n Region index: %d\n"),
+
1303 (e.wFlags & PROCESS_HEAP_ENTRY_MOVEABLE) != 0 ? tstring_printf(_T(", movable with HANDLE %#p"), e.Block.hMem).c_str() : _T(""),
+
1304 (e.wFlags & PROCESS_HEAP_ENTRY_DDESHARE) != 0 ? _T(", DDESHARE") : _T(""),
+
1305 e.lpData,
+
1306 e.cbData,
+
1307 e.cbOverhead,
+
1308 e.iRegionIndex);
1309
-
1310 found = true;
+
1310 found = true;
1311 }
1312 }
1313
-
1314 const DWORD dwResult = GetLastError();
- -
1316 OutputDebugStr(_T("HeapWalk failed (error %u).\n"), dwResult);
+
1314 const DWORD dwResult = GetLastError();
+
1315 if (dwResult != ERROR_NO_MORE_ITEMS)
+
1316 OutputDebugStr(_T("HeapWalk failed (error %u).\n"), dwResult);
1317
1318 // Unlock the heap.
-
1319 HeapUnlock(m_h);
+
1319 HeapUnlock(m_h);
1320
-
1321 return found;
+
1321 return found;
1322 }
1323
1324 protected:
-
1330 void free_internal() noexcept override
+
1330 void free_internal() noexcept override
1331 {
1332 enumerate();
- +
1333 HeapDestroy(m_h);
1334 }
1335 };
@@ -1228,83 +1236,83 @@
1342 {
1343 public:
-
1344 typedef typename _Ty value_type;
+
1344 typedef typename _Ty value_type;
1345
-
1346 typedef _Ty *pointer;
-
1347 typedef _Ty& reference;
-
1348 typedef const _Ty *const_pointer;
-
1349 typedef const _Ty& const_reference;
+
1346 typedef _Ty *pointer;
+
1347 typedef _Ty& reference;
+
1348 typedef const _Ty *const_pointer;
+
1349 typedef const _Ty& const_reference;
1350
- - +
1351 typedef SIZE_T size_type;
+
1352 typedef ptrdiff_t difference_type;
1353
1357 template <class _Other>
1358 struct rebind
1359 {
- +
1361 };
1362
1363 public:
1371
1377 template <class _Other>
1380
- +
1389 {
-
1390 assert(m_heap);
-
1391 return (pointer)HeapAlloc(m_heap, 0, count * sizeof(_Ty));
+
1390 assert(m_heap);
+
1391 return (pointer)HeapAlloc(m_heap, 0, count * sizeof(_Ty));
1392 }
1393
- +
1400 void deallocate(_In_ pointer ptr, _In_ size_type size)
1401 {
- -
1403 assert(m_heap);
-
1404 HeapFree(m_heap, 0, ptr);
+
1402 UNREFERENCED_PARAMETER(size);
+
1403 assert(m_heap);
+
1404 HeapFree(m_heap, 0, ptr);
1405 }
1406
- +
1413 void construct(_Inout_ pointer ptr, _In_ const _Ty& val)
1414 {
-
1415 ::new ((void*)ptr) _Ty(val);
+
1415 ::new ((void*)ptr) _Ty(val);
1416 }
1417
- +
1424 void construct(_Inout_ pointer ptr, _Inout_ _Ty&& val)
1425 {
-
1426 ::new ((void*)ptr) _Ty(std::forward<_Ty>(val));
+
1426 ::new ((void*)ptr) _Ty(std::forward<_Ty>(val));
1427 }
1428
- +
1434 void destroy(_Inout_ pointer ptr)
1435 {
-
1436 ptr->_Ty::~_Ty();
+
1436 ptr->_Ty::~_Ty();
1437 }
1438
- +
1443 {
-
1444 return (SIZE_T)-1;
+
1444 return (SIZE_T)-1;
1445 }
1446
1447 public:
- +
1448 HANDLE m_heap;
1449 };
1450
@@ -1316,9 +1324,9 @@
1458
1459 public:
- +
1467 actctx_activator(_In_ HANDLE hActCtx) noexcept
1468 {
- +
1469 if (!ActivateActCtx(hActCtx, &m_cookie))
1470 m_cookie = 0;
1471 }
@@ -1327,12 +1335,12 @@
1479 {
1480 if (m_cookie)
- +
1481 DeactivateActCtx(0, m_cookie);
1482 }
1483
1484 protected:
- +
1485 ULONG_PTR m_cookie;
1486 };
1487
@@ -1340,20 +1348,20 @@
1492 {
1493 public:
- +
1497 impersonator() noexcept : m_cookie(FALSE) {}
1498
1505 {
1506 if (m_cookie)
-
1507 RevertToSelf();
+
1507 RevertToSelf();
1508 }
1509
-
1513 operator bool () const { return m_cookie; }
+
1513 operator bool () const { return m_cookie; }
1514
1515 protected:
- +
1517 };
1518
@@ -1365,9 +1373,9 @@
1526
1527 public:
- +
1535 user_impersonator(_In_opt_ HANDLE hToken) noexcept
1536 {
- +
1537 m_cookie = hToken && ImpersonateLoggedOnUser(hToken);
1538 }
1539 };
@@ -1381,48 +1389,48 @@
1548
1549 public:
- +
1554 {
-
1555 TOKEN_PRIVILEGES privileges = { 1, {{{ 0, 0 }, SE_PRIVILEGE_ENABLED }} };
-
1556 if (!LookupPrivilegeValue(NULL, SE_DEBUG_NAME, &privileges.Privileges[0].Luid) ||
- +
1555 TOKEN_PRIVILEGES privileges = { 1, {{{ 0, 0 }, SE_PRIVILEGE_ENABLED }} };
+
1556 if (!LookupPrivilegeValue(NULL, SE_DEBUG_NAME, &privileges.Privileges[0].Luid) ||
+
1557 !ImpersonateSelf(SecurityImpersonation))
1558 return;
1559
1560 {
-
1561 HANDLE h;
- -
1563 goto revert;
- - -
1566 goto revert;
- -
1568 if (!process_snapshot)
-
1569 goto revert;
-
1570 PROCESSENTRY32 entry = { sizeof(PROCESSENTRY32) };
- -
1572 goto revert;
-
1573 while (_tcsicmp(entry.szExeFile, TEXT("winlogon.exe")) != 0)
- -
1575 goto revert;
- -
1577 if (!winlogon_process)
-
1578 goto revert;
- -
1580 goto revert;
- - -
1583 goto revert;
- - -
1586 goto revert;
+
1561 HANDLE h;
+
1562 if (!OpenThreadToken(GetCurrentThread(), TOKEN_ADJUST_PRIVILEGES, FALSE, &h))
+
1563 goto revert;
+
1564 win_handle<INVALID_HANDLE_VALUE> thread_token(h);
+
1565 if (!AdjustTokenPrivileges(thread_token, FALSE, &privileges, sizeof(privileges), NULL, NULL))
+
1566 goto revert;
+
1567 process_snapshot process_snapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
+
1568 if (!process_snapshot)
+
1569 goto revert;
+
1570 PROCESSENTRY32 entry = { sizeof(PROCESSENTRY32) };
+
1571 if (!Process32First(process_snapshot, &entry))
+
1572 goto revert;
+
1573 while (_tcsicmp(entry.szExeFile, TEXT("winlogon.exe")) != 0)
+
1574 if (!Process32Next(process_snapshot, &entry))
+
1575 goto revert;
+
1576 process winlogon_process = OpenProcess(PROCESS_QUERY_INFORMATION, FALSE, entry.th32ProcessID);
+
1577 if (!winlogon_process)
+
1578 goto revert;
+
1579 if (!OpenProcessToken(winlogon_process, TOKEN_IMPERSONATE | TOKEN_DUPLICATE, &h))
+
1580 goto revert;
+
1581 win_handle<INVALID_HANDLE_VALUE> winlogon_token(h);
+
1582 if (!DuplicateToken(winlogon_token, SecurityImpersonation, &h))
+
1583 goto revert;
+
1584 win_handle<INVALID_HANDLE_VALUE> duplicated_token(h);
+
1585 if (!SetThreadToken(NULL, duplicated_token))
+
1586 goto revert;
1587 }
1588
-
1589 m_cookie = TRUE;
+
1589 m_cookie = TRUE;
1590 return;
1591
-
1592 revert:
- -
1594 RevertToSelf();
+
1592 revert:
+
1593 last_error_saver last_error_save;
+
1594 RevertToSelf();
1595 }
1596 };
@@ -1433,9 +1441,9 @@
1602 {
1603 public:
- +
1609 clipboard_opener(_In_opt_ HWND hWndNewOwner = NULL)
1610 {
- +
1611 if (!OpenClipboard(hWndNewOwner))
1612 throw win_runtime_error("OpenClipboard failed");
1613 }
@@ -1443,7 +1451,7 @@
1621 {
- +
1622 CloseClipboard();
1623 }
1624 };
@@ -1457,9 +1465,9 @@
1633
1634 public:
- +
1642 console_ctrl_handler(_In_opt_ PHANDLER_ROUTINE HandlerRoutine) noexcept : m_handler(HandlerRoutine)
1643 {
- +
1644 m_cookie = SetConsoleCtrlHandler(m_handler, TRUE);
1645 }
1646
@@ -1467,13 +1475,13 @@
1653 {
1654 if (m_cookie)
- +
1655 SetConsoleCtrlHandler(m_handler, FALSE);
1656 }
1657
1658 protected:
- - + +
1660 PHANDLER_ROUTINE m_handler;
1661 };
1662
@@ -1484,21 +1492,21 @@
1669
1670 public:
- +
1674 vmemory() noexcept : m_proc(NULL)
1675 {}
1676
- -
1684 m_proc(proc),
- +
1683 vmemory(_In_ handle_type h, _In_ HANDLE proc) noexcept :
+
1684 m_proc(proc),
+
1686 {}
1687
- -
1694 m_proc(std::move(h.m_proc)),
-
1695 handle<LPVOID, NULL>(std::move(h))
+
1693 vmemory(_Inout_ vmemory &&h) noexcept :
+
1694 m_proc(std::move(h.m_proc)),
+
1695 handle<LPVOID, NULL>(std::move(h))
1696 {}
1697
@@ -1506,15 +1514,15 @@
1703 virtual ~vmemory()
1704 {
1705 if (m_h != invalid)
- +
1706 VirtualFreeEx(m_proc, m_h, 0, MEM_RELEASE);
1707 }
1708
- +
1714 vmemory& operator=(_Inout_ vmemory &&other) noexcept
1715 {
1716 if (this != std::addressof(other)) {
-
1717 (handle<handle_type, NULL>&&)*this = std::move(other);
+
1717 (handle<handle_type, NULL>&&)*this = std::move(other);
1718 m_proc = std::move(other.m_proc);
1719 }
1720 return *this;
@@ -1522,26 +1530,26 @@
1722
- +
1731 void attach(_In_ HANDLE proc, _In_opt_ handle_type h) noexcept
1732 {
-
1733 m_proc = proc;
+
1733 m_proc = proc;
1734 if (m_h != invalid)
1735 free_internal();
-
1736 m_h = h;
+
1736 m_h = h;
1737 }
1738
1748 bool alloc(
- - - - -
1753 _In_ DWORD flProtect) noexcept
+
1749 _In_ HANDLE hProcess,
+
1750 _In_opt_ LPVOID lpAddress,
+
1751 _In_ SIZE_T dwSize,
+
1752 _In_ DWORD flAllocationType,
+
1753 _In_ DWORD flProtect) noexcept
1754 {
- -
1756 if (h != invalid) {
-
1757 attach(hProcess, h);
+
1755 handle_type h = VirtualAllocEx(hProcess, lpAddress, dwSize, flAllocationType, flProtect);
+
1756 if (h != invalid) {
+
1757 attach(hProcess, h);
1758 return true;
1759 } else
1760 return false;
@@ -1550,21 +1558,21 @@
1762
1763 protected:
-
1769 void free_internal() noexcept override
+
1769 void free_internal() noexcept override
1770 {
- +
1771 VirtualFreeEx(m_proc, m_h, 0, MEM_RELEASE);
1772 }
1773
1774 protected:
- +
1775 HANDLE m_proc;
1776 };
1777
1784 class reg_key : public handle<HKEY, NULL>
1785 {
- +
1786 WINSTD_HANDLE_IMPL(reg_key, HKEY, NULL)
1787
1788 public:
@@ -1576,44 +1584,44 @@
1799
- +
1809 bool delete_subkey(_In_z_ LPCTSTR szSubkey)
1810 {
-
1811 LSTATUS s;
+
1811 LSTATUS s;
1812
- - +
1813 s = RegDeleteKey(m_h, szSubkey);
+
1814 if (s == ERROR_SUCCESS || s == ERROR_FILE_NOT_FOUND)
1815 return true;
1816
1817 {
-
1818 reg_key k;
-
1819 handle_type h;
- -
1821 if (s == ERROR_SUCCESS)
-
1822 k.attach(h);
+
1818 reg_key k;
+
1819 handle_type h;
+
1820 s = RegOpenKeyEx(m_h, szSubkey, 0, KEY_ENUMERATE_SUB_KEYS, &h);
+
1821 if (s == ERROR_SUCCESS)
+
1822 k.attach(h);
1823 else {
-
1824 SetLastError(s);
+
1824 SetLastError(s);
1825 return false;
1826 }
1827 for (;;) {
- - -
1830 s = RegEnumKeyEx(k, 0, szName, &dwSize, NULL, NULL, NULL, NULL);
-
1831 if (s == ERROR_SUCCESS)
-
1832 k.delete_subkey(szName);
-
1833 else if (s == ERROR_NO_MORE_ITEMS)
+
1828 TCHAR szName[MAX_PATH];
+
1829 DWORD dwSize = _countof(szName);
+
1830 s = RegEnumKeyEx(k, 0, szName, &dwSize, NULL, NULL, NULL, NULL);
+
1831 if (s == ERROR_SUCCESS)
+
1832 k.delete_subkey(szName);
+
1833 else if (s == ERROR_NO_MORE_ITEMS)
1834 break;
1835 else {
-
1836 SetLastError(s);
+
1836 SetLastError(s);
1837 return false;
1838 }
1839 }
1840 }
1841
- -
1843 if (s == ERROR_SUCCESS)
+
1842 s = RegDeleteKey(m_h, szSubkey);
+
1843 if (s == ERROR_SUCCESS)
1844 return true;
1845 else {
-
1846 SetLastError(s);
+
1846 SetLastError(s);
1847 return false;
1848 }
1849 }
@@ -1621,9 +1629,9 @@
1850
1851 protected:
-
1857 void free_internal() noexcept override
+
1857 void free_internal() noexcept override
1858 {
- +
1859 RegCloseKey(m_h);
1860 }
1861 };
@@ -1632,7 +1640,7 @@
1866 class security_id : public handle<PSID, NULL>
1867 {
- +
1868 WINSTD_HANDLE_IMPL(security_id, PSID, NULL)
1869
1870 public:
@@ -1645,9 +1653,9 @@
1881
1882 protected:
-
1888 void free_internal() noexcept override
+
1888 void free_internal() noexcept override
1889 {
-
1890 FreeSid(m_h);
+
1890 FreeSid(m_h);
1891 }
1892 };
@@ -1661,12 +1669,12 @@
1901
1902 public:
- +
1907 {
- - -
1910 dwProcessId = 0;
-
1911 dwThreadId = 0;
+
1908 hProcess = INVALID_HANDLE_VALUE;
+
1909 hThread = INVALID_HANDLE_VALUE;
+
1910 dwProcessId = 0;
+
1911 dwThreadId = 0;
1912 }
1913
@@ -1676,11 +1684,11 @@
1919 #pragma warning(push)
1920 #pragma warning(disable: 6001) // Using uninitialized memory '*this'. << ???
1921
- - +
1922 if (hProcess != INVALID_HANDLE_VALUE)
+
1923 CloseHandle(hProcess);
1924
- - +
1925 if (hThread != INVALID_HANDLE_VALUE)
+
1926 CloseHandle(hThread);
1927
1928 #pragma warning(pop)
1929 }
@@ -1691,7 +1699,7 @@
1937 class event_log : public handle<HANDLE, NULL>
1938 {
- +
1939 WINSTD_HANDLE_IMPL(event_log, HANDLE, NULL)
1940
1941 public:
@@ -1704,9 +1712,9 @@
1952
1953 protected:
-
1959 void free_internal() noexcept override
+
1959 void free_internal() noexcept override
1960 {
- +
1961 DeregisterEventSource(m_h);
1962 }
1963 };
@@ -1715,7 +1723,7 @@
1968 class sc_handle : public handle<SC_HANDLE, NULL>
1969 {
- +
1970 WINSTD_HANDLE_IMPL(sc_handle, SC_HANDLE, NULL)
1971
1972 public:
@@ -1728,9 +1736,9 @@
1983
1984 protected:
-
1990 void free_internal() noexcept override
+
1990 void free_internal() noexcept override
1991 {
- +
1992 CloseServiceHandle(m_h);
1993 }
1994 };
@@ -1815,7 +1823,7 @@
2080
-
2086static BOOL OpenProcessToken(_In_ HANDLE ProcessHandle, _In_ DWORD DesiredAccess, _Inout_ winstd::win_handle<NULL> &TokenHandle)
+
2086static BOOL OpenProcessToken(_In_ HANDLE ProcessHandle, _In_ DWORD DesiredAccess, _Inout_ winstd::win_handle<NULL> &TokenHandle)
2087{
2088 HANDLE h;
2089 if (OpenProcessToken(ProcessHandle, DesiredAccess, &h)) {
@@ -1827,7 +1835,7 @@
2095
-
2101static BOOL DuplicateTokenEx(_In_ HANDLE hExistingToken, _In_ DWORD dwDesiredAccess, _In_opt_ LPSECURITY_ATTRIBUTES lpTokenAttributes, _In_ SECURITY_IMPERSONATION_LEVEL ImpersonationLevel, _In_ TOKEN_TYPE TokenType, _Inout_ winstd::win_handle<NULL> &NewToken)
+
2101static BOOL DuplicateTokenEx(_In_ HANDLE hExistingToken, _In_ DWORD dwDesiredAccess, _In_opt_ LPSECURITY_ATTRIBUTES lpTokenAttributes, _In_ SECURITY_IMPERSONATION_LEVEL ImpersonationLevel, _In_ TOKEN_TYPE TokenType, _Inout_ winstd::win_handle<NULL> &NewToken)
2102{
2103 HANDLE h;
2104 if (DuplicateTokenEx(hExistingToken, dwDesiredAccess, lpTokenAttributes, ImpersonationLevel, TokenType, &h)) {
@@ -1851,7 +1859,7 @@
2125
-
2127static DWORD SetEntriesInAclA(_In_ ULONG cCountOfExplicitEntries, _In_reads_opt_(cCountOfExplicitEntries) PEXPLICIT_ACCESS_A pListOfExplicitEntries, _In_opt_ PACL OldAcl, _Inout_ std::unique_ptr<ACL, winstd::LocalFree_delete<ACL>>& Acl)
+
2127static DWORD SetEntriesInAclA(_In_ ULONG cCountOfExplicitEntries, _In_reads_opt_(cCountOfExplicitEntries) PEXPLICIT_ACCESS_A pListOfExplicitEntries, _In_opt_ PACL OldAcl, _Inout_ std::unique_ptr<ACL, winstd::LocalFree_delete<ACL>>& Acl)
2128{
2129 PACL h;
2130 DWORD dwResult = SetEntriesInAclA(cCountOfExplicitEntries, pListOfExplicitEntries, OldAcl, &h);
@@ -1862,7 +1870,7 @@
2135
-
2141static DWORD SetEntriesInAclW(_In_ ULONG cCountOfExplicitEntries, _In_reads_opt_(cCountOfExplicitEntries) PEXPLICIT_ACCESS_W pListOfExplicitEntries, _In_opt_ PACL OldAcl, _Inout_ std::unique_ptr<ACL, winstd::LocalFree_delete<ACL>>& Acl)
+
2141static DWORD SetEntriesInAclW(_In_ ULONG cCountOfExplicitEntries, _In_reads_opt_(cCountOfExplicitEntries) PEXPLICIT_ACCESS_W pListOfExplicitEntries, _In_opt_ PACL OldAcl, _Inout_ std::unique_ptr<ACL, winstd::LocalFree_delete<ACL>>& Acl)
2142{
2143 PACL h;
2144 DWORD dwResult = SetEntriesInAclW(cCountOfExplicitEntries, pListOfExplicitEntries, OldAcl, &h);
@@ -1903,6 +1911,7 @@
actctx_activator(HANDLE hActCtx) noexcept
Construct the activator and activates the given activation context.
Definition Win.h:1467
virtual ~actctx_activator()
Deactivates activation context and destructs the activator.
Definition Win.h:1478
ULONG_PTR m_cookie
Cookie for context deactivation.
Definition Win.h:1485
+
Base template class to support string formatting using printf() style templates.
Definition Common.h:1635
Clipboard management.
Definition Win.h:1602
virtual ~clipboard_opener()
Closes the clipboard.
Definition Win.h:1620
clipboard_opener(HWND hWndNewOwner=NULL)
Opens the clipboard for examination and prevents other applications from modifying the clipboard cont...
Definition Win.h:1609
@@ -1922,24 +1931,26 @@
virtual ~find_file()
Closes a file search handle.
Definition Win.h:1240
void free_internal() noexcept override
Closes a file search handle.
Definition Win.h:1252
Base abstract template class to support generic object handle keeping.
Definition Common.h:1024
-
handle_type m_h
Object handle.
Definition Common.h:1276
+
handle_type m_h
Definition Common.h:1276
+
void attach(handle_type h) noexcept
Sets a new object handle for the class.
Definition Common.h:1239
+
LPVOID handle_type
Definition Common.h:1029
HeapAlloc allocator.
Definition Win.h:1342
-
SIZE_T size_type
An unsigned integral type that can represent the length of any sequence that an object of template cl...
Definition Win.h:1351
-
_Ty value_type
A type that is managed by the allocator.
Definition Win.h:1344
+
_Ty value_type
A type that is managed by the allocator.
Definition Win.h:1344
heap_allocator(const heap_allocator< _Other > &other)
Constructs allocator from another type.
Definition Win.h:1378
+
_Ty * pointer
A type that provides a pointer to the type of object managed by the allocator.
Definition Win.h:1346
+
const _Ty * const_pointer
A type that provides a constant pointer to the type of object managed by the allocator.
Definition Win.h:1348
HANDLE m_heap
Heap handle.
Definition Win.h:1448
pointer allocate(size_type count)
Allocates a new memory block.
Definition Win.h:1388
-
ptrdiff_t difference_type
A signed integral type that can represent the difference between values of pointers to the type of ob...
Definition Win.h:1352
+
_Ty & reference
A type that provides a reference to the type of object managed by the allocator.
Definition Win.h:1347
heap_allocator(HANDLE heap)
Constructs allocator.
Definition Win.h:1369
-
_Ty & reference
A type that provides a reference to the type of object managed by the allocator.
Definition Win.h:1347
void construct(pointer ptr, _Ty &&val)
Calls moving constructor for the element.
Definition Win.h:1424
void deallocate(pointer ptr, size_type size)
Frees memory block.
Definition Win.h:1400
size_type max_size() const
Returns maximum memory block size.
Definition Win.h:1442
void construct(pointer ptr, const _Ty &val)
Calls copying constructor for the element.
Definition Win.h:1413
-
const _Ty & const_reference
A type that provides a constant reference to type of object managed by the allocator.
Definition Win.h:1349
-
const _Ty * const_pointer
A type that provides a constant pointer to the type of object managed by the allocator.
Definition Win.h:1348
-
_Ty * pointer
A type that provides a pointer to the type of object managed by the allocator.
Definition Win.h:1346
+
const _Ty & const_reference
A type that provides a constant reference to type of object managed by the allocator.
Definition Win.h:1349
+
SIZE_T size_type
An unsigned integral type that can represent the length of any sequence that an object of template cl...
Definition Win.h:1351
void destroy(pointer ptr)
Calls destructor for the element.
Definition Win.h:1434
+
ptrdiff_t difference_type
A signed integral type that can represent the difference between values of pointers to the type of ob...
Definition Win.h:1352
Heap handle wrapper.
Definition Win.h:1264
bool enumerate() noexcept
Enumerates allocated heap blocks using OutputDebugString()
Definition Win.h:1286
void free_internal() noexcept override
Destroys the heap.
Definition Win.h:1330
@@ -1958,7 +1969,6 @@
PROCESS_INFORMATION struct wrapper.
Definition Win.h:1898
~process_information()
Closes process and thread handles.
Definition Win.h:1917
process_information() noexcept
Constructs blank PROCESS_INFORMATION.
Definition Win.h:1906
-
Helper class for returning pointers to std::unique_ptr.
Definition Common.h:863
Registry key wrapper class.
Definition Win.h:1785
void free_internal() noexcept override
Closes a handle to the registry key.
Definition Win.h:1857
bool delete_subkey(LPCTSTR szSubkey)
Deletes the specified registry subkey.
Definition Win.h:1809
@@ -1993,7 +2003,7 @@
static int sprintf(std::basic_string< _Elem, _Traits, _Ax > &str, const _Elem *format,...)
Formats string using printf().
Definition Common.h:333
static int vsprintf(std::basic_string< char, _Traits, _Ax > &str, const char *format, va_list arg)
Formats string using printf().
Definition Common.h:256
#define WINSTD_HANDLE_IMPL(C, T, INVAL)
Implements default constructors and operators to prevent their auto-generation by compiler.
Definition Common.h:164
-
static const HANDLE invalid
Invalid handle value.
Definition Common.h:1034
+
static const HANDLE invalid
Definition Common.h:1034
static int NormalizeString(NORM_FORM NormForm, LPCWSTR lpSrcString, int cwSrcLength, std::basic_string< wchar_t, _Traits, _Ax > &sDstString) noexcept
Normalizes characters of a text string according to Unicode 4.0 TR#15.
Definition Win.h:627
static DWORD ExpandEnvironmentStringsW(LPCWSTR lpSrc, std::basic_string< wchar_t, _Traits, _Ax > &sValue)
Expands environment-variable strings, replaces them with the values defined for the current user,...
Definition Win.h:192
static BOOL StringToGuidA(LPCSTR lpszGuid, LPGUID lpGuid, LPCSTR *lpszGuidEnd=NULL) noexcept
Parses string with GUID and stores it to GUID.
Definition Win.h:255
@@ -2041,14 +2051,16 @@
static VOID GuidToStringW(LPCGUID lpGuid, std::basic_string< wchar_t, _Traits, _Ax > &str) noexcept
Formats GUID and stores it in a std::wstring string.
Definition Win.h:235
static VOID OutputDebugStrV(LPCSTR lpOutputString, va_list arg) noexcept
Formats and sends a string to the debugger for display.
Definition Win.h:742
win_handle< NULL > thread
Thread handle wrapper.
Definition Win.h:1084
+
Deleter for unique_ptr using LocalFree.
Definition Common.h:735
Deleter for unique_ptr using UnmapViewOfFile.
Definition Win.h:1163
void operator()(void *_Ptr) const
Delete a pointer.
Definition Win.h:1167
A structure that enables an allocator for objects of one type to allocate storage for objects of anot...
Definition Win.h:1359
-
heap_allocator< _Other > other
Other allocator type.
Definition Win.h:1360
+
heap_allocator< _Other > other
Other allocator type.
Definition Win.h:1360
+
diff --git a/_win_h_t_t_p_8h_source.html b/_win_h_t_t_p_8h_source.html index 29313a8d..744b0797 100644 --- a/_win_h_t_t_p_8h_source.html +++ b/_win_h_t_t_p_8h_source.html @@ -3,13 +3,15 @@ - + WinStd: include/WinStd/WinHTTP.h Source File + + @@ -32,18 +34,23 @@
- + + @@ -80,6 +87,7 @@
+
WinHTTP.h
@@ -140,7 +148,7 @@
71 class http : public handle<HINTERNET, NULL>
72 {
- +
73 WINSTD_HANDLE_IMPL(http, HINTERNET, NULL)
74
75 public:
@@ -153,9 +161,9 @@
86
87 protected:
-
93 void free_internal() noexcept override
+
93 void free_internal() noexcept override
94 {
- +
95 WinHttpCloseHandle(m_h);
96 }
97 };
@@ -163,18 +171,18 @@
98
100}
Base abstract template class to support generic object handle keeping.
Definition Common.h:1024
-
handle_type m_h
Object handle.
Definition Common.h:1276
+
handle_type m_h
Definition Common.h:1276
HTTP handle wrapper class.
Definition WinHTTP.h:72
virtual ~http()
Closes a handle to the HTTP.
Definition WinHTTP.h:81
void free_internal() noexcept override
Closes a handle to the HTTP.
Definition WinHTTP.h:93
-
Helper class for returning pointers to std::unique_ptr.
Definition Common.h:863
#define WINSTD_HANDLE_IMPL(C, T, INVAL)
Implements default constructors and operators to prevent their auto-generation by compiler.
Definition Common.h:164
-
static const HINTERNET invalid
Invalid handle value.
Definition Common.h:1034
+
static const HINTERNET invalid
Definition Common.h:1034
BOOL WinHttpQueryHeaders(HINTERNET hRequest, DWORD dwInfoLevel, DWORD &dwData)
Retrieves header information associated with an HTTP request.
Definition WinHTTP.h:23
+
diff --git a/_win_sock2_8h_source.html b/_win_sock2_8h_source.html index f15e61ca..ad413c34 100644 --- a/_win_sock2_8h_source.html +++ b/_win_sock2_8h_source.html @@ -3,13 +3,15 @@ - + WinStd: include/WinStd/WinSock2.h Source File + + @@ -32,18 +34,23 @@
- + + @@ -80,6 +87,7 @@
+
WinSock2.h
@@ -106,49 +114,49 @@
25 {
26 public:
34
- +
41 ws2_runtime_error(_In_ error_type num, _In_ const std::string& msg) : num_runtime_error<int>(num, msg + ": " + message(num))
42 {}
43
- +
50 ws2_runtime_error(_In_ error_type num, _In_z_ const char *msg) : num_runtime_error<int>(num, std::string(msg) + ": " + message(num))
51 {}
52
58
- +
64 ws2_runtime_error(_In_ const std::string& msg) : num_runtime_error<int>(WSAGetLastError(), msg + ": " + message(WSAGetLastError()))
65 {}
66
- +
72 ws2_runtime_error(_In_z_ const char *msg) : num_runtime_error<int>(WSAGetLastError(), std::string(msg) + ": " + message(WSAGetLastError()))
73 {}
74
75 protected:
- +
81 static std::string message(_In_ error_type num, _In_opt_ DWORD dwLanguageId = 0)
82 {
-
83 std::wstring wstr;
- +
83 std::wstring wstr;
+
84 if (FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS, 0, num, dwLanguageId, wstr, NULL)) {
85 // Stock Windows error messages contain CRLF. Well... Trim all the trailing white space.
-
86 wstr.erase(wstr.find_last_not_of(L" \t\n\r\f\v") + 1);
+
86 wstr.erase(wstr.find_last_not_of(L" \t\n\r\f\v") + 1);
87 }
88 else
-
89 sprintf(wstr, num >= 0x10000 ? L"Error 0x%X" : L"Error %u", num);
-
90 std::string str;
- -
92 return str;
+
89 sprintf(wstr, num >= 0x10000 ? L"Error 0x%X" : L"Error %u", num);
+
90 std::string str;
+
91 WideCharToMultiByte(CP_UTF8, 0, wstr, str, NULL, NULL);
+
92 return str;
93 }
94 };
@@ -161,7 +169,7 @@
108 class addrinfo : public handle<PADDRINFOA, NULL>
109 {
- +
110 WINSTD_HANDLE_IMPL(addrinfo, PADDRINFOA, NULL)
111
112 public:
@@ -174,9 +182,9 @@
123
124 protected:
-
130 void free_internal() noexcept override
+
130 void free_internal() noexcept override
131 {
- +
132 FreeAddrInfoA(m_h);
133 }
134 };
@@ -185,7 +193,7 @@
141 class waddrinfo : public handle<PADDRINFOW, NULL>
142 {
- +
143 WINSTD_HANDLE_IMPL(waddrinfo, PADDRINFOW, NULL)
144
145 public:
@@ -198,9 +206,9 @@
156
157 protected:
-
163 void free_internal() noexcept override
+
163 void free_internal() noexcept override
164 {
- +
165 FreeAddrInfoW(m_h);
166 }
167 };
@@ -256,9 +264,9 @@
void free_internal() noexcept override
Frees address information.
Definition WinSock2.h:130
virtual ~addrinfo()
Frees address information.
Definition WinSock2.h:118
Base abstract template class to support generic object handle keeping.
Definition Common.h:1024
-
handle_type m_h
Object handle.
Definition Common.h:1276
+
handle_type m_h
Definition Common.h:1276
Numerical runtime error.
Definition Common.h:1481
-
Helper class for returning pointers to std::unique_ptr.
Definition Common.h:863
+
int error_type
Definition Common.h:1483
ADDRINFOW wrapper class.
Definition WinSock2.h:142
virtual ~waddrinfo()
Frees address information.
Definition WinSock2.h:151
void free_internal() noexcept override
Frees address information.
Definition WinSock2.h:163
@@ -277,11 +285,12 @@
static int WideCharToMultiByte(UINT CodePage, DWORD dwFlags, LPCWSTR lpWideCharStr, int cchWideChar, std::basic_string< char, _Traits, _Ax > &sMultiByteStr, LPCSTR lpDefaultChar, LPBOOL lpUsedDefaultChar) noexcept
Maps a UTF-16 (wide character) string to a std::string. The new character string is not necessarily f...
Definition Common.h:348
static int sprintf(std::basic_string< _Elem, _Traits, _Ax > &str, const _Elem *format,...)
Formats string using printf().
Definition Common.h:333
#define WINSTD_HANDLE_IMPL(C, T, INVAL)
Implements default constructors and operators to prevent their auto-generation by compiler.
Definition Common.h:164
-
static const PADDRINFOA invalid
Invalid handle value.
Definition Common.h:1034
+
static const PADDRINFOA invalid
Definition Common.h:1034
+
diff --git a/_win_trust_8h_source.html b/_win_trust_8h_source.html index dd4c94bd..ed1cf7a0 100644 --- a/_win_trust_8h_source.html +++ b/_win_trust_8h_source.html @@ -3,13 +3,15 @@ - + WinStd: include/WinStd/WinTrust.h Source File + + @@ -32,18 +34,23 @@
- + + @@ -80,6 +87,7 @@
+
WinTrust.h
@@ -107,34 +115,33 @@
26
27 public:
- -
32 m_hwnd(hwnd),
- -
34 m_wtd(wtd)
+
31 wintrust(_In_opt_ HWND hwnd, _In_ const GUID &action, _Inout_ WINTRUST_DATA &wtd) :
+
32 m_hwnd(hwnd),
+
33 m_action(action),
+
34 m_wtd(wtd)
35 {
-
36 const LONG lResult = WinVerifyTrust(m_hwnd, &m_action, &m_wtd);
- -
38 throw win_runtime_error(lResult, "WinVerifyTrust failed");
+
36 const LONG lResult = WinVerifyTrust(m_hwnd, &m_action, &m_wtd);
+
37 if (lResult != ERROR_SUCCESS)
+
38 throw win_runtime_error(lResult, "WinVerifyTrust failed");
39 }
40
44 virtual ~wintrust()
45 {
-
46 m_wtd.dwStateAction = WTD_STATEACTION_CLOSE;
-
47 WinVerifyTrust(m_hwnd, &m_action, &m_wtd);
+
46 m_wtd.dwStateAction = WTD_STATEACTION_CLOSE;
+
47 WinVerifyTrust(m_hwnd, &m_action, &m_wtd);
48 }
49
50 protected:
-
52 HWND m_hwnd;
- - +
52 HWND m_hwnd;
+
53 GUID m_action;
+
54 WINTRUST_DATA &m_wtd;
56 };
57
59}
-
Helper class for returning pointers to std::unique_ptr.
Definition Common.h:863
Windows runtime error.
Definition Common.h:1553
WinTrust engine wrapper class.
Definition WinTrust.h:23
wintrust(HWND hwnd, const GUID &action, WINTRUST_DATA &wtd)
Initializes a new class instance.
Definition WinTrust.h:31
@@ -144,7 +151,8 @@
+
diff --git a/annotated.html b/annotated.html index 556e75f7..eb573812 100644 --- a/annotated.html +++ b/annotated.html @@ -3,13 +3,15 @@ - + WinStd: Class List + + @@ -32,24 +34,35 @@
- + + +
+
+
diff --git a/classes.html b/classes.html index 1a882531..55d9bbe4 100644 --- a/classes.html +++ b/classes.html @@ -3,13 +3,15 @@ - + WinStd: Class Index + + @@ -32,24 +34,35 @@
- + + +
+
+
diff --git a/classwinstd_1_1actctx__activator-members.html b/classwinstd_1_1actctx__activator-members.html index e4c523cd..833acaca 100644 --- a/classwinstd_1_1actctx__activator-members.html +++ b/classwinstd_1_1actctx__activator-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + + +
winstd::actctx_activator Member List
@@ -88,7 +101,8 @@
+ diff --git a/classwinstd_1_1actctx__activator.html b/classwinstd_1_1actctx__activator.html index 23f871ce..a6d7a414 100644 --- a/classwinstd_1_1actctx__activator.html +++ b/classwinstd_1_1actctx__activator.html @@ -3,13 +3,15 @@ - + WinStd: winstd::actctx_activator Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -91,17 +104,17 @@ - + - +

Public Member Functions

 actctx_activator (HANDLE hActCtx) noexcept
 actctx_activator (HANDLE hActCtx) noexcept
 Construct the activator and activates the given activation context.
 
virtual ~actctx_activator ()
virtual ~actctx_activator ()
 Deactivates activation context and destructs the activator.
 
+ULONG_PTR 

Protected Attributes

-ULONG_PTR m_cookie
m_cookie
 Cookie for context deactivation.
 
@@ -120,7 +133,7 @@

winstd::actctx_activator::actctx_activator ( - HANDLE hActCtx) + HANDLE hActCtx) @@ -152,9 +165,9 @@

- + - +
virtual winstd::actctx_activator::~actctx_activator virtual winstd::actctx_activator::~actctx_activator ())
@@ -176,7 +189,8 @@

+

diff --git a/classwinstd_1_1addrinfo-members.html b/classwinstd_1_1addrinfo-members.html index 1d827077..e06cf83f 100644 --- a/classwinstd_1_1addrinfo-members.html +++ b/classwinstd_1_1addrinfo-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::addrinfo Member List
@@ -89,7 +102,7 @@ handle() noexceptwinstd::handle< PADDRINFOA, NULL >inline handle(handle_type h) noexceptwinstd::handle< PADDRINFOA, NULL >inline handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< PADDRINFOA, NULL >inline - handle_type typedefwinstd::handle< PADDRINFOA, NULL > + handle_type typedefwinstd::handle< PADDRINFOA, NULL > invalidwinstd::handle< PADDRINFOA, NULL >static m_hwinstd::handle< PADDRINFOA, NULL >protected operator handle_type() constwinstd::handle< PADDRINFOA, NULL >inline @@ -109,7 +122,8 @@
+ diff --git a/classwinstd_1_1addrinfo.html b/classwinstd_1_1addrinfo.html index 7076d01d..f76e3df4 100644 --- a/classwinstd_1_1addrinfo.html +++ b/classwinstd_1_1addrinfo.html @@ -3,13 +3,15 @@ - + WinStd: winstd::addrinfo Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -100,91 +113,92 @@ - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~addrinfo ()
virtual ~addrinfo ()
 Frees address information.
 
- Public Member Functions inherited from winstd::handle< PADDRINFOA, NULL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Frees address information.
 
- Protected Member Functions inherited from winstd::handle< PADDRINFOA, NULL >
- - - + + + +static const PADDRINFOA  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< PADDRINFOA, NULL >
-typedef PADDRINFOA handle_type
 Datatype of the object handle this template class handles.
 
+typedef PADDRINFOA handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< PADDRINFOA, NULL >
-static const PADDRINFOA invalid
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< PADDRINFOA, NULL >
-handle_type m_h
m_h
 Object handle.
 
@@ -202,9 +216,9 @@

- + - +
virtual winstd::addrinfo::~addrinfo virtual winstd::addrinfo::~addrinfo ())
@@ -231,9 +245,9 @@

- + - +
void winstd::addrinfo::free_internal void winstd::addrinfo::free_internal ())
@@ -257,7 +271,8 @@

+

diff --git a/classwinstd_1_1basic__string__guid-members.html b/classwinstd_1_1basic__string__guid-members.html index 15305c58..6819d3ed 100644 --- a/classwinstd_1_1basic__string__guid-members.html +++ b/classwinstd_1_1basic__string__guid-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::basic_string_guid< _Elem, _Traits, _Ax > Member List
@@ -86,7 +99,8 @@
+ diff --git a/classwinstd_1_1basic__string__guid.html b/classwinstd_1_1basic__string__guid.html index e1075789..ff5b18ed 100644 --- a/classwinstd_1_1basic__string__guid.html +++ b/classwinstd_1_1basic__string__guid.html @@ -3,13 +3,15 @@ - + WinStd: winstd::basic_string_guid< _Elem, _Traits, _Ax > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
@@ -96,12 +109,12 @@

Public Member Functions

Initializing string using template in memory
basic_string_guid (const GUID &guid, const _Elem *format) + basic_string_guid (const GUID &guid, const _Elem *format)  Initializes a new string and formats its contents to string representation of given GUID.
 

Detailed Description

-
template<class _Elem, class _Traits, class _Ax>
+
template<class _Elem, class _Traits, class _Ax>
class winstd::basic_string_guid< _Elem, _Traits, _Ax >

Base template class to support converting GUID to string.

Constructor & Destructor Documentation

@@ -110,20 +123,20 @@

+template<class _Elem , class _Traits , class _Ax >
@@ -150,7 +163,8 @@

+ diff --git a/classwinstd_1_1basic__string__msg-members.html b/classwinstd_1_1basic__string__msg-members.html index c70a88f8..6625a120 100644 --- a/classwinstd_1_1basic__string__msg-members.html +++ b/classwinstd_1_1basic__string__msg-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + - + - +
winstd::basic_string_guid< _Elem, _Traits, _Ax >::basic_string_guid winstd::basic_string_guid< _Elem, _Traits, _Ax >::basic_string_guid (const GUID & guid, const GUID & guid,
const _Elem * format )const _Elem * format )

- + + +
+
winstd::basic_string_msg< _Elem, _Traits, _Ax > Member List
@@ -92,7 +105,8 @@
+
diff --git a/classwinstd_1_1basic__string__msg.html b/classwinstd_1_1basic__string__msg.html index 6417ef7c..51b31523 100644 --- a/classwinstd_1_1basic__string__msg.html +++ b/classwinstd_1_1basic__string__msg.html @@ -3,13 +3,15 @@ - + WinStd: winstd::basic_string_msg< _Elem, _Traits, _Ax > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -96,32 +109,32 @@ - + - + - + - + - + - + - +

Public Member Functions

 basic_string_msg (DWORD dwFlags, LPCVOID lpSource, DWORD dwMessageId, DWORD dwLanguageId, va_list *Arguments)
 basic_string_msg (DWORD dwFlags, LPCVOID lpSource, DWORD dwMessageId, DWORD dwLanguageId, va_list *Arguments)
 Initializes a new string and formats its contents using FormatMessage() style.
 
 basic_string_msg (DWORD dwFlags, LPCVOID lpSource, DWORD dwMessageId, DWORD dwLanguageId, DWORD_PTR *Arguments)
 basic_string_msg (DWORD dwFlags, LPCVOID lpSource, DWORD dwMessageId, DWORD dwLanguageId, DWORD_PTR *Arguments)
 Initializes a new string and formats its contents using FormatMessage() style.
 
 basic_string_msg (DWORD dwFlags, LPCTSTR pszFormat, va_list *Arguments)
 basic_string_msg (DWORD dwFlags, LPCTSTR pszFormat, va_list *Arguments)
 Initializes a new string and formats its contents using FormatMessage() style.
 
 basic_string_msg (DWORD dwFlags, LPCTSTR pszFormat, DWORD_PTR *Arguments)
 basic_string_msg (DWORD dwFlags, LPCTSTR pszFormat, DWORD_PTR *Arguments)
 Initializes a new string and formats its contents using FormatMessage() style.
 
Initializing string using template in memory
 basic_string_msg (const _Elem *format,...)
 basic_string_msg (const _Elem *format,...)
 Initializes a new string and formats its contents using FormatMessage() style template.
 
Initializing string using template in resources
 basic_string_msg (HINSTANCE hInstance, UINT nFormatID,...)
 basic_string_msg (HINSTANCE hInstance, UINT nFormatID,...)
 Initializes a new string and formats its contents using FormatMessage() style template in resources.
 
 basic_string_msg (HINSTANCE hInstance, WORD wLanguageID, UINT nFormatID,...)
 basic_string_msg (HINSTANCE hInstance, WORD wLanguageID, UINT nFormatID,...)
 Initializes a new string and formats its contents using FormatMessage() style template in resources.
 

Detailed Description

-
template<class _Elem, class _Traits, class _Ax>
+
template<class _Elem, class _Traits, class _Ax>
class winstd::basic_string_msg< _Elem, _Traits, _Ax >

Base template class to support string formatting using FormatMessage() style templates.

Constructor & Destructor Documentation

@@ -130,15 +143,15 @@

+template<class _Elem , class _Traits , class _Ax >
- + - + - +
- + - + @@ -169,20 +182,20 @@

+template<class _Elem , class _Traits , class _Ax >

winstd::basic_string_msg< _Elem, _Traits, _Ax >::basic_string_msg winstd::basic_string_msg< _Elem, _Traits, _Ax >::basic_string_msg (const _Elem * format, const _Elem * format,
- + - + - + @@ -214,25 +227,25 @@

+template<class _Elem , class _Traits , class _Ax >

winstd::basic_string_msg< _Elem, _Traits, _Ax >::basic_string_msg winstd::basic_string_msg< _Elem, _Traits, _Ax >::basic_string_msg (HINSTANCE hInstance, HINSTANCE hInstance,
UINT nFormatID, UINT nFormatID,
- + - + - + - + @@ -265,35 +278,35 @@

+template<class _Elem , class _Traits , class _Ax >

winstd::basic_string_msg< _Elem, _Traits, _Ax >::basic_string_msg winstd::basic_string_msg< _Elem, _Traits, _Ax >::basic_string_msg (HINSTANCE hInstance, HINSTANCE hInstance,
WORD wLanguageID, WORD wLanguageID,
UINT nFormatID, UINT nFormatID,
@@ -314,35 +327,35 @@

+template<class _Elem , class _Traits , class _Ax >

- + - + - + - + - + - +
winstd::basic_string_msg< _Elem, _Traits, _Ax >::basic_string_msg winstd::basic_string_msg< _Elem, _Traits, _Ax >::basic_string_msg (DWORD dwFlags, DWORD dwFlags,
LPCVOID lpSource, LPCVOID lpSource,
DWORD dwMessageId, DWORD dwMessageId,
DWORD dwLanguageId, DWORD dwLanguageId,
va_list * Arguments )va_list * Arguments )
@@ -363,25 +376,25 @@

+template<class _Elem , class _Traits , class _Ax >

- + - + - + - + - + - +
winstd::basic_string_msg< _Elem, _Traits, _Ax >::basic_string_msg winstd::basic_string_msg< _Elem, _Traits, _Ax >::basic_string_msg (DWORD dwFlags, DWORD dwFlags,
LPCVOID lpSource, LPCVOID lpSource,
DWORD dwMessageId, DWORD dwMessageId,
DWORD dwLanguageId, DWORD dwLanguageId,
DWORD_PTR * Arguments )DWORD_PTR * Arguments )
@@ -402,25 +415,25 @@

+template<class _Elem , class _Traits , class _Ax >

- + - + - + - +
winstd::basic_string_msg< _Elem, _Traits, _Ax >::basic_string_msg winstd::basic_string_msg< _Elem, _Traits, _Ax >::basic_string_msg (DWORD dwFlags, DWORD dwFlags,
LPCTSTR pszFormat, LPCTSTR pszFormat,
va_list * Arguments )va_list * Arguments )
@@ -441,7 +454,8 @@

+ diff --git a/classwinstd_1_1basic__string__printf-members.html b/classwinstd_1_1basic__string__printf-members.html index 25c15f84..b11fbc8b 100644 --- a/classwinstd_1_1basic__string__printf-members.html +++ b/classwinstd_1_1basic__string__printf-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + - + - + - +
winstd::basic_string_msg< _Elem, _Traits, _Ax >::basic_string_msg winstd::basic_string_msg< _Elem, _Traits, _Ax >::basic_string_msg (DWORD dwFlags, DWORD dwFlags,
LPCTSTR pszFormat, LPCTSTR pszFormat,
DWORD_PTR * Arguments )DWORD_PTR * Arguments )
- + + + +
winstd::basic_string_printf< _Elem, _Traits, _Ax > Member List
@@ -88,7 +101,8 @@
+ diff --git a/classwinstd_1_1basic__string__printf.html b/classwinstd_1_1basic__string__printf.html index 38ba1d47..4a5f2e80 100644 --- a/classwinstd_1_1basic__string__printf.html +++ b/classwinstd_1_1basic__string__printf.html @@ -3,13 +3,15 @@ - + WinStd: winstd::basic_string_printf< _Elem, _Traits, _Ax > Class Template Reference + + @@ -32,23 +34,33 @@
- + + + +
@@ -96,19 +109,19 @@

Public Member Functions

Initializing string using template in memory
 basic_string_printf (const _Elem *format,...)
 basic_string_printf (const _Elem *format,...)
 Initializes a new string and formats its contents using printf() style template.
 
Initializing string using template in resources
 basic_string_printf (HINSTANCE hInstance, UINT nFormatID,...)
 basic_string_printf (HINSTANCE hInstance, UINT nFormatID,...)
 Initializes a new string and formats its contents using printf() style template in resources.
 
 basic_string_printf (HINSTANCE hInstance, WORD wLanguageID, UINT nFormatID,...)
 basic_string_printf (HINSTANCE hInstance, WORD wLanguageID, UINT nFormatID,...)
 Initializes a new string and formats its contents using printf() style template in resources.
 

Detailed Description

-
template<class _Elem, class _Traits, class _Ax>
+
template<class _Elem, class _Traits, class _Ax>
class winstd::basic_string_printf< _Elem, _Traits, _Ax >

Base template class to support string formatting using printf() style templates.

Constructor & Destructor Documentation

@@ -117,15 +130,15 @@

+template<class _Elem , class _Traits , class _Ax >
- + - + @@ -156,20 +169,20 @@

+template<class _Elem , class _Traits , class _Ax >

winstd::basic_string_printf< _Elem, _Traits, _Ax >::basic_string_printf winstd::basic_string_printf< _Elem, _Traits, _Ax >::basic_string_printf (const _Elem * format, const _Elem * format,
- + - + - + @@ -201,25 +214,25 @@

+template<class _Elem , class _Traits , class _Ax >

winstd::basic_string_printf< _Elem, _Traits, _Ax >::basic_string_printf winstd::basic_string_printf< _Elem, _Traits, _Ax >::basic_string_printf (HINSTANCE hInstance, HINSTANCE hInstance,
UINT nFormatID, UINT nFormatID,
- + - + - + - + @@ -252,7 +265,8 @@

+ diff --git a/classwinstd_1_1bstr-members.html b/classwinstd_1_1bstr-members.html index cee68ce0..c4018c7b 100644 --- a/classwinstd_1_1bstr-members.html +++ b/classwinstd_1_1bstr-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

winstd::basic_string_printf< _Elem, _Traits, _Ax >::basic_string_printf winstd::basic_string_printf< _Elem, _Traits, _Ax >::basic_string_printf (HINSTANCE hInstance, HINSTANCE hInstance,
WORD wLanguageID, WORD wLanguageID,
UINT nFormatID, UINT nFormatID,
- + + + +
winstd::bstr Member List
@@ -82,47 +95,48 @@

This is the complete list of members for winstd::bstr, including all inherited members.

- + - + - + - - - - - + + + + + - - - - - - - - - + + + + + + + + + - - - - + + + +
attach(handle_type h) noexceptwinstd::handle< T, INVAL >inline
attach(handle_type h) noexceptwinstd::handle< BSTR, INVAL >inline
attach_duplicated(handle_type h)winstd::dplhandle< BSTR, NULL >inline
bstr(LPCOLESTR src)winstd::bstrinline
bstr(LPCOLESTR src, UINT len)winstd::bstrinline
bstr(const std::basic_string< OLECHAR, _Traits, _Ax > &src)winstd::bstrinline
detach()winstd::handle< T, INVAL >inline
detach()winstd::handle< BSTR, INVAL >inline
dplhandle() noexceptwinstd::dplhandle< BSTR, NULL >inline
dplhandle(handle_type h) noexceptwinstd::dplhandle< BSTR, NULL >inline
dplhandle(const dplhandle< handle_type, INVAL > &h)winstd::dplhandle< BSTR, NULL >inline
dplhandle(dplhandle< handle_type, INVAL > &&h) noexceptwinstd::dplhandle< BSTR, NULL >inline
duplicate() constwinstd::dplhandle< BSTR, NULL >inline
duplicate_internal(handle_type h) const overridewinstd::bstrinlineprotectedvirtual
free()winstd::handle< T, INVAL >inline
free()winstd::handle< BSTR, INVAL >inline
free_internal() noexcept overridewinstd::bstrinlineprotectedvirtual
handle() noexceptwinstd::handle< T, INVAL >inline
handle(handle_type h) noexceptwinstd::handle< T, INVAL >inline
handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< T, INVAL >inline
handle_type typedefwinstd::handle< T, INVAL >
invalidwinstd::handle< T, INVAL >static
handle() noexceptwinstd::handle< BSTR, INVAL >inline
handle(handle_type h) noexceptwinstd::handle< BSTR, INVAL >inline
handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< BSTR, INVAL >inline
handle_type typedefwinstd::handle< BSTR, INVAL >
invalidwinstd::handle< BSTR, INVAL >static
length() const noexceptwinstd::bstrinline
m_hwinstd::handle< T, INVAL >protected
operator handle_type() constwinstd::handle< T, INVAL >inline
operator!() constwinstd::handle< T, INVAL >inline
operator!=(handle_type h) constwinstd::handle< T, INVAL >inline
operator&()winstd::handle< T, INVAL >inline
operator*() constwinstd::handle< T, INVAL >inline
operator->() constwinstd::handle< T, INVAL >inline
operator<(handle_type h) constwinstd::handle< T, INVAL >inline
operator<=(handle_type h) constwinstd::handle< T, INVAL >inline
m_hwinstd::handle< BSTR, INVAL >protected
operator handle_type() constwinstd::handle< BSTR, INVAL >inline
operator!() constwinstd::handle< BSTR, INVAL >inline
operator!=(handle_type h) constwinstd::handle< BSTR, INVAL >inline
operator&()winstd::handle< BSTR, INVAL >inline
operator*() constwinstd::handle< BSTR, INVAL >inline
operator->() constwinstd::handle< BSTR, INVAL >inline
operator<(handle_type h) constwinstd::handle< BSTR, INVAL >inline
operator<=(handle_type h) constwinstd::handle< BSTR, INVAL >inline
operator=(handle_type h) noexceptwinstd::dplhandle< BSTR, NULL >inline
operator=(const dplhandle< handle_type, INVAL > &h) noexceptwinstd::dplhandle< BSTR, NULL >inline
operator=(dplhandle< handle_type, INVAL > &&h) noexceptwinstd::dplhandle< BSTR, NULL >inline
winstd::handle::operator=(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< T, INVAL >inline
operator==(handle_type h) constwinstd::handle< T, INVAL >inline
operator>(handle_type h) constwinstd::handle< T, INVAL >inline
operator>=(handle_type h) constwinstd::handle< T, INVAL >inline
winstd::handle< BSTR, INVAL >::operator=(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< BSTR, INVAL >inline
operator==(handle_type h) constwinstd::handle< BSTR, INVAL >inline
operator>(handle_type h) constwinstd::handle< BSTR, INVAL >inline
operator>=(handle_type h) constwinstd::handle< BSTR, INVAL >inline
~bstr()winstd::bstrinlinevirtual
+ diff --git a/classwinstd_1_1bstr.html b/classwinstd_1_1bstr.html index f41e7635..b42c8f41 100644 --- a/classwinstd_1_1bstr.html +++ b/classwinstd_1_1bstr.html @@ -3,13 +3,15 @@ - + WinStd: winstd::bstr Class Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -95,145 +108,147 @@ winstd::dplhandle< BSTR, NULL > -winstd::handle< T, INVAL > +winstd::handle< BSTR, INVAL >
+  +  - +template<class _Traits , class _Ax > + - + - + +  - + - + - + - + - + - + - + - + - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

bstr (LPCOLESTR src)
bstr (LPCOLESTR src)
 Constructs BSTR from OLE string.
 
bstr (LPCOLESTR src, UINT len)
bstr (LPCOLESTR src, UINT len)
 Constructs BSTR from OLE string with length.
 
-template<class _Traits , class _Ax >
 bstr (const std::basic_string< OLECHAR, _Traits, _Ax > &src)
 bstr (const std::basic_string< OLECHAR, _Traits, _Ax > &src)
 Constructs BSTR from std::basic_string.
 
virtual ~bstr ()
virtual ~bstr ()
 Destroys the string.
 
UINT length () const noexcept
UINT length () const noexcept
 Returns the length of the string.
 
- Public Member Functions inherited from winstd::dplhandle< BSTR, NULL >
dplhandle () noexcept
dplhandle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 dplhandle (handle_type h) noexcept
 dplhandle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 dplhandle (const dplhandle< handle_type, INVAL > &h)
 dplhandle (const dplhandle< handle_type, INVAL > &h)
 Copy constructor.
 
 dplhandle (dplhandle< handle_type, INVAL > &&h) noexcept
 dplhandle (dplhandle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
dplhandle< handle_type, INVAL > & operator= (handle_type h) noexcept
dplhandle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
dplhandle< handle_type, INVAL > & operator= (const dplhandle< handle_type, INVAL > &h) noexcept
dplhandle< handle_type, INVAL > & operator= (const dplhandle< handle_type, INVAL > &h) noexcept
 Duplicates the object.
 
dplhandle< handle_type, INVAL > & operator= (dplhandle< handle_type, INVAL > &&h) noexcept
dplhandle< handle_type, INVAL > & operator= (dplhandle< handle_type, INVAL > &&h) noexcept
 Moves the object.
 
handle_type duplicate () const
handle_type duplicate () const
 Duplicates and returns a new object handle.
 
void attach_duplicated (handle_type h)
void attach_duplicated (handle_type h)
 Duplicates an object handle and sets a new object handle.
 
- Public Member Functions inherited from winstd::handle< T, INVAL >
- Public Member Functions inherited from winstd::handle< BSTR, INVAL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + - + + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Destroys the string.
 
handle_type duplicate_internal (handle_type h) const override
handle_type duplicate_internal (handle_type h) const override
 Duplicates the string.
 
- Protected Member Functions inherited from winstd::dplhandle< BSTR, NULL >
- Protected Member Functions inherited from winstd::handle< BSTR, INVAL >
- - - - - + + + + + +static const BSTR  - + +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< T, INVAL >
-typedef T handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< T, INVAL >
- Public Types inherited from winstd::handle< BSTR, INVAL >
+typedef BSTR handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< BSTR, INVAL >
-static const T invalid = INVAL
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< T, INVAL >
- Protected Attributes inherited from winstd::handle< BSTR, INVAL >
-handle_type m_h
m_h
 Object handle.
 
@@ -250,9 +265,9 @@

- + - +
virtual winstd::bstr::~bstr virtual winstd::bstr::~bstr ())
@@ -279,9 +294,9 @@

- + - +
handle_type winstd::bstr::duplicate_internal handle_type winstd::bstr::duplicate_internal (handle_type h)handle_type h) const
@@ -316,9 +331,9 @@

- + - +
void winstd::bstr::free_internal void winstd::bstr::free_internal ())
@@ -332,7 +347,7 @@

See also
SysFreeString function
-

Implements winstd::handle< T, INVAL >.

+

Implements winstd::handle< BSTR, INVAL >.

@@ -346,9 +361,9 @@

- + - +
UINT winstd::bstr::length UINT winstd::bstr::length ()) const
@@ -370,7 +385,8 @@

+ diff --git a/classwinstd_1_1cert__chain__context-members.html b/classwinstd_1_1cert__chain__context-members.html index 52c98244..63da4bb7 100644 --- a/classwinstd_1_1cert__chain__context-members.html +++ b/classwinstd_1_1cert__chain__context-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + + +
winstd::cert_chain_context Member List
@@ -82,43 +95,44 @@

This is the complete list of members for winstd::cert_chain_context, including all inherited members.

- + - + - + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - + + + +
attach(handle_type h) noexceptwinstd::handle< T, INVAL >inline
attach(handle_type h) noexceptwinstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >inline
attach_duplicated(handle_type h)winstd::dplhandle< PCCERT_CHAIN_CONTEXT, NULL >inline
detach()winstd::handle< T, INVAL >inline
detach()winstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >inline
dplhandle() noexceptwinstd::dplhandle< PCCERT_CHAIN_CONTEXT, NULL >inline
dplhandle(handle_type h) noexceptwinstd::dplhandle< PCCERT_CHAIN_CONTEXT, NULL >inline
dplhandle(const dplhandle< handle_type, INVAL > &h)winstd::dplhandle< PCCERT_CHAIN_CONTEXT, NULL >inline
dplhandle(dplhandle< handle_type, INVAL > &&h) noexceptwinstd::dplhandle< PCCERT_CHAIN_CONTEXT, NULL >inline
duplicate() constwinstd::dplhandle< PCCERT_CHAIN_CONTEXT, NULL >inline
duplicate_internal(handle_type h) const overridewinstd::cert_chain_contextinlineprotectedvirtual
free()winstd::handle< T, INVAL >inline
free()winstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >inline
free_internal() noexcept overridewinstd::cert_chain_contextinlineprotectedvirtual
handle() noexceptwinstd::handle< T, INVAL >inline
handle(handle_type h) noexceptwinstd::handle< T, INVAL >inline
handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< T, INVAL >inline
handle_type typedefwinstd::handle< T, INVAL >
invalidwinstd::handle< T, INVAL >static
m_hwinstd::handle< T, INVAL >protected
operator handle_type() constwinstd::handle< T, INVAL >inline
operator!() constwinstd::handle< T, INVAL >inline
operator!=(handle_type h) constwinstd::handle< T, INVAL >inline
operator&()winstd::handle< T, INVAL >inline
operator*() constwinstd::handle< T, INVAL >inline
operator->() constwinstd::handle< T, INVAL >inline
operator<(handle_type h) constwinstd::handle< T, INVAL >inline
operator<=(handle_type h) constwinstd::handle< T, INVAL >inline
handle() noexceptwinstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >inline
handle(handle_type h) noexceptwinstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >inline
handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >inline
handle_type typedefwinstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >
invalidwinstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >static
m_hwinstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >protected
operator handle_type() constwinstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >inline
operator!() constwinstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >inline
operator!=(handle_type h) constwinstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >inline
operator&()winstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >inline
operator*() constwinstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >inline
operator->() constwinstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >inline
operator<(handle_type h) constwinstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >inline
operator<=(handle_type h) constwinstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >inline
operator=(handle_type h) noexceptwinstd::dplhandle< PCCERT_CHAIN_CONTEXT, NULL >inline
operator=(const dplhandle< handle_type, INVAL > &h) noexceptwinstd::dplhandle< PCCERT_CHAIN_CONTEXT, NULL >inline
operator=(dplhandle< handle_type, INVAL > &&h) noexceptwinstd::dplhandle< PCCERT_CHAIN_CONTEXT, NULL >inline
winstd::handle::operator=(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< T, INVAL >inline
operator==(handle_type h) constwinstd::handle< T, INVAL >inline
operator>(handle_type h) constwinstd::handle< T, INVAL >inline
operator>=(handle_type h) constwinstd::handle< T, INVAL >inline
winstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >::operator=(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >inline
operator==(handle_type h) constwinstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >inline
operator>(handle_type h) constwinstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >inline
operator>=(handle_type h) constwinstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >inline
~cert_chain_context()winstd::cert_chain_contextinlinevirtual
+ diff --git a/classwinstd_1_1cert__chain__context.html b/classwinstd_1_1cert__chain__context.html index a1255a66..82614c0b 100644 --- a/classwinstd_1_1cert__chain__context.html +++ b/classwinstd_1_1cert__chain__context.html @@ -3,13 +3,15 @@ - + WinStd: winstd::cert_chain_context Class Reference + + @@ -32,23 +34,33 @@

- + + +
+
Public Member Functions | @@ -95,129 +108,131 @@ winstd::dplhandle< PCCERT_CHAIN_CONTEXT, NULL > -winstd::handle< T, INVAL > +winstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >
- + +  - + - + - + - + - + - + - + - + - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~cert_chain_context ()
virtual ~cert_chain_context ()
 Destroys the certificate chain context.
 
- Public Member Functions inherited from winstd::dplhandle< PCCERT_CHAIN_CONTEXT, NULL >
dplhandle () noexcept
dplhandle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 dplhandle (handle_type h) noexcept
 dplhandle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 dplhandle (const dplhandle< handle_type, INVAL > &h)
 dplhandle (const dplhandle< handle_type, INVAL > &h)
 Copy constructor.
 
 dplhandle (dplhandle< handle_type, INVAL > &&h) noexcept
 dplhandle (dplhandle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
dplhandle< handle_type, INVAL > & operator= (handle_type h) noexcept
dplhandle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
dplhandle< handle_type, INVAL > & operator= (const dplhandle< handle_type, INVAL > &h) noexcept
dplhandle< handle_type, INVAL > & operator= (const dplhandle< handle_type, INVAL > &h) noexcept
 Duplicates the object.
 
dplhandle< handle_type, INVAL > & operator= (dplhandle< handle_type, INVAL > &&h) noexcept
dplhandle< handle_type, INVAL > & operator= (dplhandle< handle_type, INVAL > &&h) noexcept
 Moves the object.
 
handle_type duplicate () const
handle_type duplicate () const
 Duplicates and returns a new object handle.
 
void attach_duplicated (handle_type h)
void attach_duplicated (handle_type h)
 Duplicates an object handle and sets a new object handle.
 
- Public Member Functions inherited from winstd::handle< T, INVAL >
- Public Member Functions inherited from winstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + - + + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Destroys the certificate chain context.
 
handle_type duplicate_internal (handle_type h) const override
handle_type duplicate_internal (handle_type h) const override
 Duplicates the certificate chain context.
 
- Protected Member Functions inherited from winstd::dplhandle< PCCERT_CHAIN_CONTEXT, NULL >
- Protected Member Functions inherited from winstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >
- - - - - + + + + + +static const PCCERT_CHAIN_CONTEXT  - + +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< T, INVAL >
-typedef T handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< T, INVAL >
- Public Types inherited from winstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >
+typedef PCCERT_CHAIN_CONTEXT handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >
-static const T invalid = INVAL
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< T, INVAL >
- Protected Attributes inherited from winstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >
-handle_type m_h
m_h
 Object handle.
 
@@ -235,9 +250,9 @@

- + - +
virtual winstd::cert_chain_context::~cert_chain_context virtual winstd::cert_chain_context::~cert_chain_context ())
@@ -264,9 +279,9 @@

- + - +
handle_type winstd::cert_chain_context::duplicate_internal handle_type winstd::cert_chain_context::duplicate_internal (handle_type h)handle_type h) const
@@ -301,9 +316,9 @@

- + - +
void winstd::cert_chain_context::free_internal void winstd::cert_chain_context::free_internal ())
@@ -317,7 +332,7 @@

See also
CertFreeCertificateChain function
-

Implements winstd::handle< T, INVAL >.

+

Implements winstd::handle< PCCERT_CHAIN_CONTEXT, INVAL >.

@@ -327,7 +342,8 @@

+

diff --git a/classwinstd_1_1cert__context-members.html b/classwinstd_1_1cert__context-members.html index a29a05af..78cafc8e 100644 --- a/classwinstd_1_1cert__context-members.html +++ b/classwinstd_1_1cert__context-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::cert_context Member List
@@ -82,49 +95,50 @@

This is the complete list of members for winstd::cert_context, including all inherited members.

- + - + - + - - - - - - - - + + + + + + + + - - - - + + + + - + - + - + - + - + - +
attach(handle_type h) noexceptwinstd::handle< T, INVAL >inline
attach(handle_type h) noexceptwinstd::handle< PCCERT_CONTEXT, INVAL >inline
attach_duplicated(handle_type h)winstd::dplhandle< PCCERT_CONTEXT, NULL >inline
detach()winstd::handle< T, INVAL >inline
detach()winstd::handle< PCCERT_CONTEXT, INVAL >inline
dplhandle() noexceptwinstd::dplhandle< PCCERT_CONTEXT, NULL >inline
dplhandle(handle_type h) noexceptwinstd::dplhandle< PCCERT_CONTEXT, NULL >inline
dplhandle(const dplhandle< handle_type, INVAL > &h)winstd::dplhandle< PCCERT_CONTEXT, NULL >inline
dplhandle(dplhandle< handle_type, INVAL > &&h) noexceptwinstd::dplhandle< PCCERT_CONTEXT, NULL >inline
duplicate() constwinstd::dplhandle< PCCERT_CONTEXT, NULL >inline
duplicate_internal(handle_type h) const overridewinstd::cert_contextinlineprotectedvirtual
free()winstd::handle< T, INVAL >inline
free()winstd::handle< PCCERT_CONTEXT, INVAL >inline
free_internal() noexcept overridewinstd::cert_contextinlineprotectedvirtual
handle() noexceptwinstd::handle< T, INVAL >inline
handle(handle_type h) noexceptwinstd::handle< T, INVAL >inline
handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< T, INVAL >inline
handle_type typedefwinstd::handle< T, INVAL >
invalidwinstd::handle< T, INVAL >static
m_hwinstd::handle< T, INVAL >protected
operator handle_type() constwinstd::handle< T, INVAL >inline
operator!() constwinstd::handle< T, INVAL >inline
handle() noexceptwinstd::handle< PCCERT_CONTEXT, INVAL >inline
handle(handle_type h) noexceptwinstd::handle< PCCERT_CONTEXT, INVAL >inline
handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< PCCERT_CONTEXT, INVAL >inline
handle_type typedefwinstd::handle< PCCERT_CONTEXT, INVAL >
invalidwinstd::handle< PCCERT_CONTEXT, INVAL >static
m_hwinstd::handle< PCCERT_CONTEXT, INVAL >protected
operator handle_type() constwinstd::handle< PCCERT_CONTEXT, INVAL >inline
operator!() constwinstd::handle< PCCERT_CONTEXT, INVAL >inline
operator!=(const handle_type &other) const noexceptwinstd::cert_contextinline
dplhandle< PCCERT_CONTEXT, NULL >::operator!=(handle_type h) constwinstd::handle< T, INVAL >inline
operator&()winstd::handle< T, INVAL >inline
operator*() constwinstd::handle< T, INVAL >inline
operator->() constwinstd::handle< T, INVAL >inline
winstd::dplhandle< PCCERT_CONTEXT, NULL >::operator!=(handle_type h) constwinstd::handle< PCCERT_CONTEXT, INVAL >inline
operator&()winstd::handle< PCCERT_CONTEXT, INVAL >inline
operator*() constwinstd::handle< PCCERT_CONTEXT, INVAL >inline
operator->() constwinstd::handle< PCCERT_CONTEXT, INVAL >inline
operator<(const handle_type &other) const noexceptwinstd::cert_contextinline
dplhandle< PCCERT_CONTEXT, NULL >::operator<(handle_type h) constwinstd::handle< T, INVAL >inline
winstd::dplhandle< PCCERT_CONTEXT, NULL >::operator<(handle_type h) constwinstd::handle< PCCERT_CONTEXT, INVAL >inline
operator<=(const handle_type &other) const noexceptwinstd::cert_contextinline
dplhandle< PCCERT_CONTEXT, NULL >::operator<=(handle_type h) constwinstd::handle< T, INVAL >inline
winstd::dplhandle< PCCERT_CONTEXT, NULL >::operator<=(handle_type h) constwinstd::handle< PCCERT_CONTEXT, INVAL >inline
operator=(handle_type h) noexceptwinstd::dplhandle< PCCERT_CONTEXT, NULL >inline
operator=(const dplhandle< handle_type, INVAL > &h) noexceptwinstd::dplhandle< PCCERT_CONTEXT, NULL >inline
operator=(dplhandle< handle_type, INVAL > &&h) noexceptwinstd::dplhandle< PCCERT_CONTEXT, NULL >inline
winstd::handle::operator=(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< T, INVAL >inline
winstd::handle< PCCERT_CONTEXT, INVAL >::operator=(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< PCCERT_CONTEXT, INVAL >inline
operator==(const handle_type &other) const noexceptwinstd::cert_contextinline
dplhandle< PCCERT_CONTEXT, NULL >::operator==(handle_type h) constwinstd::handle< T, INVAL >inline
winstd::dplhandle< PCCERT_CONTEXT, NULL >::operator==(handle_type h) constwinstd::handle< PCCERT_CONTEXT, INVAL >inline
operator>(const handle_type &other) const noexceptwinstd::cert_contextinline
dplhandle< PCCERT_CONTEXT, NULL >::operator>(handle_type h) constwinstd::handle< T, INVAL >inline
winstd::dplhandle< PCCERT_CONTEXT, NULL >::operator>(handle_type h) constwinstd::handle< PCCERT_CONTEXT, INVAL >inline
operator>=(const handle_type &other) const noexceptwinstd::cert_contextinline
dplhandle< PCCERT_CONTEXT, NULL >::operator>=(handle_type h) constwinstd::handle< T, INVAL >inline
winstd::dplhandle< PCCERT_CONTEXT, NULL >::operator>=(handle_type h) constwinstd::handle< PCCERT_CONTEXT, INVAL >inline
~cert_context()winstd::cert_contextinlinevirtual
+
diff --git a/classwinstd_1_1cert__context.html b/classwinstd_1_1cert__context.html index fc3c2c8a..75e5d6df 100644 --- a/classwinstd_1_1cert__context.html +++ b/classwinstd_1_1cert__context.html @@ -3,13 +3,15 @@ - + WinStd: winstd::cert_context Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -95,147 +108,149 @@ winstd::dplhandle< PCCERT_CONTEXT, NULL > -winstd::handle< T, INVAL > +winstd::handle< PCCERT_CONTEXT, INVAL >
- + - + - + - + - + - + - + +  - + - + - + - + - + - + - + - + - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~cert_context ()
virtual ~cert_context ()
 Destroys the certificate context.
 
bool operator== (const handle_type &other) const noexcept
bool operator== (const handle_type &other) const noexcept
 Is certificate equal to?
 
bool operator!= (const handle_type &other) const noexcept
bool operator!= (const handle_type &other) const noexcept
 Is certificate not equal to?
 
bool operator< (const handle_type &other) const noexcept
bool operator< (const handle_type &other) const noexcept
 Is certificate less than?
 
bool operator> (const handle_type &other) const noexcept
bool operator> (const handle_type &other) const noexcept
 Is certificate greater than?
 
bool operator<= (const handle_type &other) const noexcept
bool operator<= (const handle_type &other) const noexcept
 Is certificate less than or equal?
 
bool operator>= (const handle_type &other) const noexcept
bool operator>= (const handle_type &other) const noexcept
 Is certificate greater than or equal?
 
- Public Member Functions inherited from winstd::dplhandle< PCCERT_CONTEXT, NULL >
dplhandle () noexcept
dplhandle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 dplhandle (handle_type h) noexcept
 dplhandle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 dplhandle (const dplhandle< handle_type, INVAL > &h)
 dplhandle (const dplhandle< handle_type, INVAL > &h)
 Copy constructor.
 
 dplhandle (dplhandle< handle_type, INVAL > &&h) noexcept
 dplhandle (dplhandle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
dplhandle< handle_type, INVAL > & operator= (handle_type h) noexcept
dplhandle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
dplhandle< handle_type, INVAL > & operator= (const dplhandle< handle_type, INVAL > &h) noexcept
dplhandle< handle_type, INVAL > & operator= (const dplhandle< handle_type, INVAL > &h) noexcept
 Duplicates the object.
 
dplhandle< handle_type, INVAL > & operator= (dplhandle< handle_type, INVAL > &&h) noexcept
dplhandle< handle_type, INVAL > & operator= (dplhandle< handle_type, INVAL > &&h) noexcept
 Moves the object.
 
handle_type duplicate () const
handle_type duplicate () const
 Duplicates and returns a new object handle.
 
void attach_duplicated (handle_type h)
void attach_duplicated (handle_type h)
 Duplicates an object handle and sets a new object handle.
 
- Public Member Functions inherited from winstd::handle< T, INVAL >
- Public Member Functions inherited from winstd::handle< PCCERT_CONTEXT, INVAL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + - + + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Destroys the certificate context.
 
handle_type duplicate_internal (handle_type h) const override
handle_type duplicate_internal (handle_type h) const override
 Duplicates the certificate context.
 
- Protected Member Functions inherited from winstd::dplhandle< PCCERT_CONTEXT, NULL >
- Protected Member Functions inherited from winstd::handle< PCCERT_CONTEXT, INVAL >
- - - - - + + + + + +static const PCCERT_CONTEXT  - + +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< T, INVAL >
-typedef T handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< T, INVAL >
- Public Types inherited from winstd::handle< PCCERT_CONTEXT, INVAL >
+typedef PCCERT_CONTEXT handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< PCCERT_CONTEXT, INVAL >
-static const T invalid = INVAL
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< T, INVAL >
- Protected Attributes inherited from winstd::handle< PCCERT_CONTEXT, INVAL >
-handle_type m_h
m_h
 Object handle.
 
@@ -253,9 +268,9 @@

- + - +
virtual winstd::cert_context::~cert_context virtual winstd::cert_context::~cert_context ())
@@ -282,9 +297,9 @@

- + - +
handle_type winstd::cert_context::duplicate_internal handle_type winstd::cert_context::duplicate_internal (handle_type h)handle_type h) const
@@ -319,9 +334,9 @@

- + - +
void winstd::cert_context::free_internal void winstd::cert_context::free_internal ())
@@ -335,7 +350,7 @@

See also
CertFreeCertificateContext function
-

Implements winstd::handle< T, INVAL >.

+

Implements winstd::handle< PCCERT_CONTEXT, INVAL >.

@@ -349,9 +364,9 @@

- + - +
bool winstd::cert_context::operator!= bool winstd::cert_context::operator!= (const handle_type & other)const handle_type & other) const
@@ -387,9 +402,9 @@

- + - +
bool winstd::cert_context::operator< bool winstd::cert_context::operator< (const handle_type & other)const handle_type & other) const
@@ -425,9 +440,9 @@

- + - +
bool winstd::cert_context::operator<= bool winstd::cert_context::operator<= (const handle_type & other)const handle_type & other) const
@@ -463,9 +478,9 @@

- + - +
bool winstd::cert_context::operator== bool winstd::cert_context::operator== (const handle_type & other)const handle_type & other) const
@@ -501,9 +516,9 @@

- + - +
bool winstd::cert_context::operator> bool winstd::cert_context::operator> (const handle_type & other)const handle_type & other) const
@@ -539,9 +554,9 @@

- + - +
bool winstd::cert_context::operator>= bool winstd::cert_context::operator>= (const handle_type & other)const handle_type & other) const
@@ -573,7 +588,8 @@

+ diff --git a/classwinstd_1_1cert__store-members.html b/classwinstd_1_1cert__store-members.html index 2d3024a1..e30f661f 100644 --- a/classwinstd_1_1cert__store-members.html +++ b/classwinstd_1_1cert__store-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@ - + + + + + diff --git a/classwinstd_1_1cert__store.html b/classwinstd_1_1cert__store.html index ed7889df..a242f7a1 100644 --- a/classwinstd_1_1cert__store.html +++ b/classwinstd_1_1cert__store.html @@ -3,13 +3,15 @@ - + WinStd: winstd::cert_store Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -100,91 +113,92 @@ - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~cert_store ()
virtual ~cert_store ()
 Closes the certificate store.
 
- Public Member Functions inherited from winstd::handle< HCERTSTORE, NULL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Closes the certificate store.
 
- Protected Member Functions inherited from winstd::handle< HCERTSTORE, NULL >
- - - + + + +static const HCERTSTORE  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< HCERTSTORE, NULL >
-typedef HCERTSTORE handle_type
 Datatype of the object handle this template class handles.
 
+typedef HCERTSTORE handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< HCERTSTORE, NULL >
-static const HCERTSTORE invalid
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< HCERTSTORE, NULL >
-handle_type m_h
m_h
 Object handle.
 
@@ -204,9 +218,9 @@

- + - +
virtual winstd::cert_store::~cert_store virtual winstd::cert_store::~cert_store ())
@@ -233,9 +247,9 @@

- + - +
void winstd::cert_store::free_internal void winstd::cert_store::free_internal ())
@@ -259,7 +273,8 @@

+

diff --git a/classwinstd_1_1clipboard__opener-members.html b/classwinstd_1_1clipboard__opener-members.html index 6626d0b3..3e8d09cc 100644 --- a/classwinstd_1_1clipboard__opener-members.html +++ b/classwinstd_1_1clipboard__opener-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::clipboard_opener Member List
@@ -87,7 +100,8 @@
+ diff --git a/classwinstd_1_1clipboard__opener.html b/classwinstd_1_1clipboard__opener.html index 047731ad..b5dbee2b 100644 --- a/classwinstd_1_1clipboard__opener.html +++ b/classwinstd_1_1clipboard__opener.html @@ -3,13 +3,15 @@ - + WinStd: winstd::clipboard_opener Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -90,10 +103,10 @@ - + - +

Public Member Functions

 clipboard_opener (HWND hWndNewOwner=NULL)
 clipboard_opener (HWND hWndNewOwner=NULL)
 Opens the clipboard for examination and prevents other applications from modifying the clipboard content.
 
virtual ~clipboard_opener ()
virtual ~clipboard_opener ()
 Closes the clipboard.
 
@@ -112,7 +125,7 @@

winstd::clipboard_opener::clipboard_opener ( - HWND hWndNewOwner = NULL) + HWND hWndNewOwner = NULL) @@ -138,9 +151,9 @@

- + - +
virtual winstd::clipboard_opener::~clipboard_opener virtual winstd::clipboard_opener::~clipboard_opener ())
@@ -162,7 +175,8 @@

+

diff --git a/classwinstd_1_1com__initializer-members.html b/classwinstd_1_1com__initializer-members.html index 674a7e2a..157db888 100644 --- a/classwinstd_1_1com__initializer-members.html +++ b/classwinstd_1_1com__initializer-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::com_initializer Member List
@@ -88,7 +101,8 @@
+ diff --git a/classwinstd_1_1com__initializer.html b/classwinstd_1_1com__initializer.html index 8316f64d..b9203cd7 100644 --- a/classwinstd_1_1com__initializer.html +++ b/classwinstd_1_1com__initializer.html @@ -3,13 +3,15 @@ - + WinStd: winstd::com_initializer Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -90,13 +103,13 @@ - + - + - +

Public Member Functions

 com_initializer (LPVOID pvReserved)
 com_initializer (LPVOID pvReserved)
 Initializes the COM library on the current thread and identifies the concurrency model as single-thread apartment (STA).
 
 com_initializer (LPVOID pvReserved, DWORD dwCoInit)
 com_initializer (LPVOID pvReserved, DWORD dwCoInit)
 Initializes the COM library for use by the calling thread, sets the thread's concurrency model, and creates a new apartment for the thread if one is required.
 
virtual ~com_initializer ()
virtual ~com_initializer ()
 Uninitializes COM.
 
@@ -115,7 +128,7 @@

winstd::com_initializer::com_initializer ( - LPVOID pvReserved) + LPVOID pvReserved) @@ -143,12 +156,12 @@

winstd::com_initializer::com_initializer ( - LPVOID pvReserved, + LPVOID pvReserved, - DWORD dwCoInit ) + DWORD dwCoInit ) @@ -173,9 +186,9 @@

- + - +
virtual winstd::com_initializer::~com_initializer virtual winstd::com_initializer::~com_initializer ())
@@ -197,7 +210,8 @@

+

diff --git a/classwinstd_1_1com__obj-members.html b/classwinstd_1_1com__obj-members.html index d9845adf..5fa48d22 100644 --- a/classwinstd_1_1com__obj-members.html +++ b/classwinstd_1_1com__obj-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::com_obj< T > Member List
@@ -94,13 +107,13 @@ dplhandle(dplhandle< handle_type, INVAL > &&h) noexceptwinstd::dplhandle< T *, NULL >inline duplicate() constwinstd::dplhandle< T *, NULL >inline duplicate_internal(T *h) const overridewinstd::com_obj< T >inlineprotected - dplhandle< T *, NULL >::duplicate_internal(handle_type h) const=0winstd::dplhandle< T *, NULL >protectedpure virtual + winstd::dplhandle< T *, NULL >::duplicate_internal(handle_type h) const=0winstd::dplhandle< T *, NULL >protectedpure virtual free()winstd::handle< T, INVAL >inline free_internal() noexcept overridewinstd::com_obj< T >inlineprotectedvirtual handle() noexceptwinstd::handle< T, INVAL >inline handle(handle_type h) noexceptwinstd::handle< T, INVAL >inline handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< T, INVAL >inline - handle_type typedefwinstd::handle< T, INVAL > + handle_type typedefwinstd::handle< T, INVAL > invalidwinstd::handle< T, INVAL >static m_hwinstd::handle< T, INVAL >protected operator handle_type() constwinstd::handle< T, INVAL >inline @@ -124,7 +137,8 @@
+ diff --git a/classwinstd_1_1com__obj.html b/classwinstd_1_1com__obj.html index 1bb5e500..a8235cf5 100644 --- a/classwinstd_1_1com__obj.html +++ b/classwinstd_1_1com__obj.html @@ -3,13 +3,15 @@ - + WinStd: winstd::com_obj< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -101,152 +114,153 @@ - + - - + + - - + + +virtual  - - + + - - + + +  - + - + - + - + - + - + - + - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

 com_obj (REFCLSID rclsid, LPUNKNOWN pUnkOuter, DWORD dwClsContext)
 com_obj (REFCLSID rclsid, LPUNKNOWN pUnkOuter, DWORD dwClsContext)
 Creates a new instance of a class.
 
template<class _Other >
 com_obj (_Other *other)
template<class _Other >
 com_obj (_Other *other)
 Queries the object for another interface and creates new class with it.
 
template<class _Other >
 com_obj (com_obj< _Other > &other)
template<class _Other >
 com_obj (com_obj< _Other > &other)
 Queries the object for another interface and creates new class with it.
 
-virtual ~com_obj ()
~com_obj ()
 Releases object.
 
template<class _Other >
HRESULT query_interface (_Other **h) const
template<class _Other >
HRESULT query_interface (_Other **h) const
 Queries the object for another interface.
 
template<class _Other >
HRESULT query_interface (com_obj< _Other > &h) const
template<class _Other >
HRESULT query_interface (com_obj< _Other > &h) const
 Queries the object for another interface.
 
- Public Member Functions inherited from winstd::dplhandle< T *, NULL >
dplhandle () noexcept
dplhandle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 dplhandle (handle_type h) noexcept
 dplhandle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 dplhandle (const dplhandle< handle_type, INVAL > &h)
 dplhandle (const dplhandle< handle_type, INVAL > &h)
 Copy constructor.
 
 dplhandle (dplhandle< handle_type, INVAL > &&h) noexcept
 dplhandle (dplhandle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
dplhandle< handle_type, INVAL > & operator= (handle_type h) noexcept
dplhandle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
dplhandle< handle_type, INVAL > & operator= (const dplhandle< handle_type, INVAL > &h) noexcept
dplhandle< handle_type, INVAL > & operator= (const dplhandle< handle_type, INVAL > &h) noexcept
 Duplicates the object.
 
dplhandle< handle_type, INVAL > & operator= (dplhandle< handle_type, INVAL > &&h) noexcept
dplhandle< handle_type, INVAL > & operator= (dplhandle< handle_type, INVAL > &&h) noexcept
 Moves the object.
 
handle_type duplicate () const
handle_type duplicate () const
 Duplicates and returns a new object handle.
 
void attach_duplicated (handle_type h)
void attach_duplicated (handle_type h)
 Duplicates an object handle and sets a new object handle.
 
- Public Member Functions inherited from winstd::handle< T, INVAL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + - + - + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Releases the object by decrementing reference counter.
 
Tduplicate_internal (T *h) const override
T * duplicate_internal (T *h) const override
 Duplicates the object by incrementing the reference counter.
 
- Protected Member Functions inherited from winstd::dplhandle< T *, NULL >
virtual handle_type duplicate_internal (handle_type h) const=0
virtual handle_type duplicate_internal (handle_type h) const=0
 Abstract member function that must be implemented by child classes to do the actual object handle duplication. On failure, it should throw appropriate exception describing the cause, rather than return an invalid handle.
 
- Protected Member Functions inherited from winstd::handle< T, INVAL >
- - - + + + +static const T  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< T, INVAL >
-typedef T handle_type
 Datatype of the object handle this template class handles.
 
+typedef T handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< T, INVAL >
-static const T invalid = INVAL
invalid = INVAL
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< T, INVAL >
-handle_type m_h
m_h
 Object handle.
 

Detailed Description

-
template<class T>
+
template<class T>
class winstd::com_obj< T >

COM object wrapper template.

See also
CoCreateInstance function

Constructor & Destructor Documentation

@@ -256,25 +270,25 @@

+template<class T >
@@ -295,17 +309,17 @@

+template<class T >
-template<class _Other >
+template<class _Other >

- + - + - + - +
winstd::com_obj< T >::com_obj winstd::com_obj< T >::com_obj (REFCLSID rclsid, REFCLSID rclsid,
LPUNKNOWN pUnkOuter, LPUNKNOWN pUnkOuter,
DWORD dwClsContext )DWORD dwClsContext )
- + - +
winstd::com_obj< T >::com_obj winstd::com_obj< T >::com_obj (_Other * other)_Other * other)
@@ -327,17 +341,17 @@

+template<class T >
-template<class _Other >
+template<class _Other > @@ -216,7 +229,8 @@

+ diff --git a/classwinstd_1_1console__ctrl__handler-members.html b/classwinstd_1_1console__ctrl__handler-members.html index 87a07d81..60219e88 100644 --- a/classwinstd_1_1console__ctrl__handler-members.html +++ b/classwinstd_1_1console__ctrl__handler-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + - +
winstd::com_obj< T >::com_obj winstd::com_obj< T >::com_obj (com_obj< _Other > & other)com_obj< _Other > & other)
@@ -360,15 +374,15 @@

+template<class T >
@@ -184,12 +197,12 @@

winstd::com_runtime_error::com_runtime_error

- + - +
- + - +
T * winstd::com_obj< T >::duplicate_internal T * winstd::com_obj< T >::duplicate_internal (T * h)T * h) const
@@ -397,15 +411,15 @@

+template<class T >
- + - +
- + - +
void winstd::com_obj< T >::free_internal void winstd::com_obj< T >::free_internal ())
@@ -429,17 +443,17 @@

+template<class T >
-template<class _Other >
+template<class _Other >
- + - +
HRESULT winstd::com_obj< T >::query_interface HRESULT winstd::com_obj< T >::query_interface (_Other ** h)_Other ** h) const
@@ -461,17 +475,17 @@

+template<class T >
-template<class _Other >
+template<class _Other >
- + - +
HRESULT winstd::com_obj< T >::query_interface HRESULT winstd::com_obj< T >::query_interface (com_obj< _Other > & h)com_obj< _Other > & h) const
@@ -493,7 +507,8 @@

+ diff --git a/classwinstd_1_1com__runtime__error-members.html b/classwinstd_1_1com__runtime__error-members.html index a2f86aaa..00bbdd6f 100644 --- a/classwinstd_1_1com__runtime__error-members.html +++ b/classwinstd_1_1com__runtime__error-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + + +
winstd::com_runtime_error Member List
@@ -84,7 +97,7 @@ - + @@ -92,7 +105,8 @@
com_runtime_error(error_type num, const std::string &msg)winstd::com_runtime_errorinline
com_runtime_error(error_type num, const char *msg=nullptr)winstd::com_runtime_errorinline
error_type typedefwinstd::num_runtime_error< HRESULT >
error_type typedefwinstd::num_runtime_error< HRESULT >
m_numwinstd::num_runtime_error< HRESULT >protected
num_runtime_error(error_type num, const std::string &msg)winstd::num_runtime_error< HRESULT >inline
num_runtime_error(error_type num, const char *msg=nullptr)winstd::num_runtime_error< HRESULT >inline
+ diff --git a/classwinstd_1_1com__runtime__error.html b/classwinstd_1_1com__runtime__error.html index 237dafdb..e9511f84 100644 --- a/classwinstd_1_1com__runtime__error.html +++ b/classwinstd_1_1com__runtime__error.html @@ -3,13 +3,15 @@ - + WinStd: winstd::com_runtime_error Class Reference + + @@ -32,23 +34,33 @@

- + + + +
Public Member Functions | @@ -99,34 +112,34 @@ - + - + - + - + +error_type 

Public Member Functions

 com_runtime_error (error_type num, const std::string &msg)
 com_runtime_error (error_type num, const std::string &msg)
 Constructs an exception.
 
 com_runtime_error (error_type num, const char *msg=nullptr)
 com_runtime_error (error_type num, const char *msg=nullptr)
 Constructs an exception.
 
- Public Member Functions inherited from winstd::num_runtime_error< HRESULT >
 num_runtime_error (error_type num, const std::string &msg)
 num_runtime_error (error_type num, const std::string &msg)
 Constructs an exception.
 
 num_runtime_error (error_type num, const char *msg=nullptr)
 num_runtime_error (error_type num, const char *msg=nullptr)
 Constructs an exception.
 
-error_type number () const
number () const
 Returns the error number.
 
- - - + + + +error_type 

Additional Inherited Members

- Public Types inherited from winstd::num_runtime_error< HRESULT >
-typedef HRESULT error_type
 Error number type.
 
+typedef HRESULT error_type
 Error number type.
 
- Protected Attributes inherited from winstd::num_runtime_error< HRESULT >
-error_type m_num
m_num
 Numeric error code.
 
@@ -146,12 +159,12 @@

winstd::com_runtime_error::com_runtime_error

(error_type num, error_type num,
const std::string & msg )const std::string & msg )

(error_type num, error_type num,
const char * msg = nullptr )const char * msg = nullptr )

- + + + +
winstd::console_ctrl_handler Member List
@@ -89,7 +102,8 @@

+
diff --git a/classwinstd_1_1console__ctrl__handler.html b/classwinstd_1_1console__ctrl__handler.html index 4bcc8234..4d663971 100644 --- a/classwinstd_1_1console__ctrl__handler.html +++ b/classwinstd_1_1console__ctrl__handler.html @@ -3,13 +3,15 @@ - + WinStd: winstd::console_ctrl_handler Class Reference + + @@ -32,23 +34,33 @@
- + + +
+
Public Member Functions | @@ -91,21 +104,21 @@ - + - +

Public Member Functions

 console_ctrl_handler (PHANDLER_ROUTINE HandlerRoutine) noexcept
 console_ctrl_handler (PHANDLER_ROUTINE HandlerRoutine) noexcept
 Construct the console control handler object and pushes the given handler to the console control handler stack.
 
virtual ~console_ctrl_handler ()
virtual ~console_ctrl_handler ()
 Pops console control handler from the console control handler stack.
 
+BOOL  +PHANDLER_ROUTINE 

Protected Attributes

-BOOL m_cookie
m_cookie
 Did pushing the console control handler succeed?
 
-PHANDLER_ROUTINE m_handler
m_handler
 Pointer to console control handler.
 
@@ -124,7 +137,7 @@

winstd::console_ctrl_handler::console_ctrl_handler ( - PHANDLER_ROUTINE HandlerRoutine) + PHANDLER_ROUTINE HandlerRoutine) @@ -156,9 +169,9 @@

- + - +
virtual winstd::console_ctrl_handler::~console_ctrl_handler virtual winstd::console_ctrl_handler::~console_ctrl_handler ())
@@ -180,7 +193,8 @@

+

diff --git a/classwinstd_1_1critical__section-members.html b/classwinstd_1_1critical__section-members.html index c1ebe18c..2b00f644 100644 --- a/classwinstd_1_1critical__section-members.html +++ b/classwinstd_1_1critical__section-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::critical_section Member List
@@ -89,7 +102,8 @@
+
diff --git a/classwinstd_1_1critical__section.html b/classwinstd_1_1critical__section.html index 78fe6b0b..a0a1a639 100644 --- a/classwinstd_1_1critical__section.html +++ b/classwinstd_1_1critical__section.html @@ -3,13 +3,15 @@ - + WinStd: winstd::critical_section Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -91,20 +104,20 @@ - + - + - +

Public Member Functions

 critical_section () noexcept
 critical_section () noexcept
 Construct the object and initializes a critical section object.
 
virtual ~critical_section ()
virtual ~critical_section ()
 Releases all resources used by an unowned critical section object.
 
 operator LPCRITICAL_SECTION () noexcept
 operator LPCRITICAL_SECTION () noexcept
 Auto-typecasting operator.
 
+CRITICAL_SECTION 

Protected Attributes

-CRITICAL_SECTION m_data
m_data
 Critical section struct.
 
@@ -123,7 +136,7 @@

winstd::critical_section::critical_section ( - ) + ) @@ -149,9 +162,9 @@

- + - +
virtual winstd::critical_section::~critical_section virtual winstd::critical_section::~critical_section ())
@@ -178,9 +191,9 @@

- + - +
winstd::critical_section::operator LPCRITICAL_SECTION winstd::critical_section::operator LPCRITICAL_SECTION ())
@@ -202,7 +215,8 @@

+

diff --git a/classwinstd_1_1crypt__hash-members.html b/classwinstd_1_1crypt__hash-members.html index d49cb03e..4e1c6f60 100644 --- a/classwinstd_1_1crypt__hash-members.html +++ b/classwinstd_1_1crypt__hash-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::crypt_hash Member List
@@ -82,43 +95,44 @@

This is the complete list of members for winstd::crypt_hash, including all inherited members.

- + - + - + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - + + + +
attach(handle_type h) noexceptwinstd::handle< T, INVAL >inline
attach(handle_type h) noexceptwinstd::handle< HCRYPTHASH, INVAL >inline
attach_duplicated(handle_type h)winstd::dplhandle< HCRYPTHASH, NULL >inline
detach()winstd::handle< T, INVAL >inline
detach()winstd::handle< HCRYPTHASH, INVAL >inline
dplhandle() noexceptwinstd::dplhandle< HCRYPTHASH, NULL >inline
dplhandle(handle_type h) noexceptwinstd::dplhandle< HCRYPTHASH, NULL >inline
dplhandle(const dplhandle< handle_type, INVAL > &h)winstd::dplhandle< HCRYPTHASH, NULL >inline
dplhandle(dplhandle< handle_type, INVAL > &&h) noexceptwinstd::dplhandle< HCRYPTHASH, NULL >inline
duplicate() constwinstd::dplhandle< HCRYPTHASH, NULL >inline
duplicate_internal(handle_type h) const overridewinstd::crypt_hashinlineprotectedvirtual
free()winstd::handle< T, INVAL >inline
free()winstd::handle< HCRYPTHASH, INVAL >inline
free_internal() noexcept overridewinstd::crypt_hashinlineprotectedvirtual
handle() noexceptwinstd::handle< T, INVAL >inline
handle(handle_type h) noexceptwinstd::handle< T, INVAL >inline
handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< T, INVAL >inline
handle_type typedefwinstd::handle< T, INVAL >
invalidwinstd::handle< T, INVAL >static
m_hwinstd::handle< T, INVAL >protected
operator handle_type() constwinstd::handle< T, INVAL >inline
operator!() constwinstd::handle< T, INVAL >inline
operator!=(handle_type h) constwinstd::handle< T, INVAL >inline
operator&()winstd::handle< T, INVAL >inline
operator*() constwinstd::handle< T, INVAL >inline
operator->() constwinstd::handle< T, INVAL >inline
operator<(handle_type h) constwinstd::handle< T, INVAL >inline
operator<=(handle_type h) constwinstd::handle< T, INVAL >inline
handle() noexceptwinstd::handle< HCRYPTHASH, INVAL >inline
handle(handle_type h) noexceptwinstd::handle< HCRYPTHASH, INVAL >inline
handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< HCRYPTHASH, INVAL >inline
handle_type typedefwinstd::handle< HCRYPTHASH, INVAL >
invalidwinstd::handle< HCRYPTHASH, INVAL >static
m_hwinstd::handle< HCRYPTHASH, INVAL >protected
operator handle_type() constwinstd::handle< HCRYPTHASH, INVAL >inline
operator!() constwinstd::handle< HCRYPTHASH, INVAL >inline
operator!=(handle_type h) constwinstd::handle< HCRYPTHASH, INVAL >inline
operator&()winstd::handle< HCRYPTHASH, INVAL >inline
operator*() constwinstd::handle< HCRYPTHASH, INVAL >inline
operator->() constwinstd::handle< HCRYPTHASH, INVAL >inline
operator<(handle_type h) constwinstd::handle< HCRYPTHASH, INVAL >inline
operator<=(handle_type h) constwinstd::handle< HCRYPTHASH, INVAL >inline
operator=(handle_type h) noexceptwinstd::dplhandle< HCRYPTHASH, NULL >inline
operator=(const dplhandle< handle_type, INVAL > &h) noexceptwinstd::dplhandle< HCRYPTHASH, NULL >inline
operator=(dplhandle< handle_type, INVAL > &&h) noexceptwinstd::dplhandle< HCRYPTHASH, NULL >inline
winstd::handle::operator=(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< T, INVAL >inline
operator==(handle_type h) constwinstd::handle< T, INVAL >inline
operator>(handle_type h) constwinstd::handle< T, INVAL >inline
operator>=(handle_type h) constwinstd::handle< T, INVAL >inline
winstd::handle< HCRYPTHASH, INVAL >::operator=(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< HCRYPTHASH, INVAL >inline
operator==(handle_type h) constwinstd::handle< HCRYPTHASH, INVAL >inline
operator>(handle_type h) constwinstd::handle< HCRYPTHASH, INVAL >inline
operator>=(handle_type h) constwinstd::handle< HCRYPTHASH, INVAL >inline
~crypt_hash()winstd::crypt_hashinlinevirtual
+ diff --git a/classwinstd_1_1crypt__hash.html b/classwinstd_1_1crypt__hash.html index ab17c7dd..fa561ae8 100644 --- a/classwinstd_1_1crypt__hash.html +++ b/classwinstd_1_1crypt__hash.html @@ -3,13 +3,15 @@ - + WinStd: winstd::crypt_hash Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -95,129 +108,131 @@ winstd::dplhandle< HCRYPTHASH, NULL > -winstd::handle< T, INVAL > +winstd::handle< HCRYPTHASH, INVAL >
- + +  - + - + - + - + - + - + - + - + - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~crypt_hash ()
virtual ~crypt_hash ()
 Destroys the hash context.
 
- Public Member Functions inherited from winstd::dplhandle< HCRYPTHASH, NULL >
dplhandle () noexcept
dplhandle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 dplhandle (handle_type h) noexcept
 dplhandle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 dplhandle (const dplhandle< handle_type, INVAL > &h)
 dplhandle (const dplhandle< handle_type, INVAL > &h)
 Copy constructor.
 
 dplhandle (dplhandle< handle_type, INVAL > &&h) noexcept
 dplhandle (dplhandle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
dplhandle< handle_type, INVAL > & operator= (handle_type h) noexcept
dplhandle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
dplhandle< handle_type, INVAL > & operator= (const dplhandle< handle_type, INVAL > &h) noexcept
dplhandle< handle_type, INVAL > & operator= (const dplhandle< handle_type, INVAL > &h) noexcept
 Duplicates the object.
 
dplhandle< handle_type, INVAL > & operator= (dplhandle< handle_type, INVAL > &&h) noexcept
dplhandle< handle_type, INVAL > & operator= (dplhandle< handle_type, INVAL > &&h) noexcept
 Moves the object.
 
handle_type duplicate () const
handle_type duplicate () const
 Duplicates and returns a new object handle.
 
void attach_duplicated (handle_type h)
void attach_duplicated (handle_type h)
 Duplicates an object handle and sets a new object handle.
 
- Public Member Functions inherited from winstd::handle< T, INVAL >
- Public Member Functions inherited from winstd::handle< HCRYPTHASH, INVAL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + - + + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Destroys the hash context.
 
handle_type duplicate_internal (handle_type h) const override
handle_type duplicate_internal (handle_type h) const override
 Duplicates the hash context.
 
- Protected Member Functions inherited from winstd::dplhandle< HCRYPTHASH, NULL >
- Protected Member Functions inherited from winstd::handle< HCRYPTHASH, INVAL >
- - - - - + + + + + +static const HCRYPTHASH  - + +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< T, INVAL >
-typedef T handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< T, INVAL >
- Public Types inherited from winstd::handle< HCRYPTHASH, INVAL >
+typedef HCRYPTHASH handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< HCRYPTHASH, INVAL >
-static const T invalid = INVAL
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< T, INVAL >
- Protected Attributes inherited from winstd::handle< HCRYPTHASH, INVAL >
-handle_type m_h
m_h
 Object handle.
 
@@ -235,9 +250,9 @@

- + - +
virtual winstd::crypt_hash::~crypt_hash virtual winstd::crypt_hash::~crypt_hash ())
@@ -264,9 +279,9 @@

- + - +
handle_type winstd::crypt_hash::duplicate_internal handle_type winstd::crypt_hash::duplicate_internal (handle_type h)handle_type h) const
@@ -301,9 +316,9 @@

- + - +
void winstd::crypt_hash::free_internal void winstd::crypt_hash::free_internal ())
@@ -317,7 +332,7 @@

See also
CryptDestroyHash function
-

Implements winstd::handle< T, INVAL >.

+

Implements winstd::handle< HCRYPTHASH, INVAL >.

@@ -327,7 +342,8 @@

+ diff --git a/classwinstd_1_1crypt__key-members.html b/classwinstd_1_1crypt__key-members.html index a183a99e..b83130dc 100644 --- a/classwinstd_1_1crypt__key-members.html +++ b/classwinstd_1_1crypt__key-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@ - + + + +
winstd::crypt_key Member List
@@ -82,44 +95,45 @@

This is the complete list of members for winstd::crypt_key, including all inherited members.

- + - + - + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - + + + +
attach(handle_type h) noexceptwinstd::handle< T, INVAL >inline
attach(handle_type h) noexceptwinstd::handle< HCRYPTKEY, INVAL >inline
attach_duplicated(handle_type h)winstd::dplhandle< HCRYPTKEY, NULL >inline
create_exp1(HCRYPTPROV hProv, DWORD dwKeySpec)winstd::crypt_keyinline
detach()winstd::handle< T, INVAL >inline
detach()winstd::handle< HCRYPTKEY, INVAL >inline
dplhandle() noexceptwinstd::dplhandle< HCRYPTKEY, NULL >inline
dplhandle(handle_type h) noexceptwinstd::dplhandle< HCRYPTKEY, NULL >inline
dplhandle(const dplhandle< handle_type, INVAL > &h)winstd::dplhandle< HCRYPTKEY, NULL >inline
dplhandle(dplhandle< handle_type, INVAL > &&h) noexceptwinstd::dplhandle< HCRYPTKEY, NULL >inline
duplicate() constwinstd::dplhandle< HCRYPTKEY, NULL >inline
duplicate_internal(handle_type h) const overridewinstd::crypt_keyinlineprotectedvirtual
free()winstd::handle< T, INVAL >inline
free()winstd::handle< HCRYPTKEY, INVAL >inline
free_internal() noexcept overridewinstd::crypt_keyinlineprotectedvirtual
handle() noexceptwinstd::handle< T, INVAL >inline
handle(handle_type h) noexceptwinstd::handle< T, INVAL >inline
handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< T, INVAL >inline
handle_type typedefwinstd::handle< T, INVAL >
invalidwinstd::handle< T, INVAL >static
m_hwinstd::handle< T, INVAL >protected
operator handle_type() constwinstd::handle< T, INVAL >inline
operator!() constwinstd::handle< T, INVAL >inline
operator!=(handle_type h) constwinstd::handle< T, INVAL >inline
operator&()winstd::handle< T, INVAL >inline
operator*() constwinstd::handle< T, INVAL >inline
operator->() constwinstd::handle< T, INVAL >inline
operator<(handle_type h) constwinstd::handle< T, INVAL >inline
operator<=(handle_type h) constwinstd::handle< T, INVAL >inline
handle() noexceptwinstd::handle< HCRYPTKEY, INVAL >inline
handle(handle_type h) noexceptwinstd::handle< HCRYPTKEY, INVAL >inline
handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< HCRYPTKEY, INVAL >inline
handle_type typedefwinstd::handle< HCRYPTKEY, INVAL >
invalidwinstd::handle< HCRYPTKEY, INVAL >static
m_hwinstd::handle< HCRYPTKEY, INVAL >protected
operator handle_type() constwinstd::handle< HCRYPTKEY, INVAL >inline
operator!() constwinstd::handle< HCRYPTKEY, INVAL >inline
operator!=(handle_type h) constwinstd::handle< HCRYPTKEY, INVAL >inline
operator&()winstd::handle< HCRYPTKEY, INVAL >inline
operator*() constwinstd::handle< HCRYPTKEY, INVAL >inline
operator->() constwinstd::handle< HCRYPTKEY, INVAL >inline
operator<(handle_type h) constwinstd::handle< HCRYPTKEY, INVAL >inline
operator<=(handle_type h) constwinstd::handle< HCRYPTKEY, INVAL >inline
operator=(handle_type h) noexceptwinstd::dplhandle< HCRYPTKEY, NULL >inline
operator=(const dplhandle< handle_type, INVAL > &h) noexceptwinstd::dplhandle< HCRYPTKEY, NULL >inline
operator=(dplhandle< handle_type, INVAL > &&h) noexceptwinstd::dplhandle< HCRYPTKEY, NULL >inline
winstd::handle::operator=(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< T, INVAL >inline
operator==(handle_type h) constwinstd::handle< T, INVAL >inline
operator>(handle_type h) constwinstd::handle< T, INVAL >inline
operator>=(handle_type h) constwinstd::handle< T, INVAL >inline
winstd::handle< HCRYPTKEY, INVAL >::operator=(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< HCRYPTKEY, INVAL >inline
operator==(handle_type h) constwinstd::handle< HCRYPTKEY, INVAL >inline
operator>(handle_type h) constwinstd::handle< HCRYPTKEY, INVAL >inline
operator>=(handle_type h) constwinstd::handle< HCRYPTKEY, INVAL >inline
~crypt_key()winstd::crypt_keyinlinevirtual
+ diff --git a/classwinstd_1_1crypt__key.html b/classwinstd_1_1crypt__key.html index ed258629..906d9b68 100644 --- a/classwinstd_1_1crypt__key.html +++ b/classwinstd_1_1crypt__key.html @@ -3,13 +3,15 @@ - + WinStd: winstd::crypt_key Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -95,132 +108,134 @@ winstd::dplhandle< HCRYPTKEY, NULL > -winstd::handle< T, INVAL > +winstd::handle< HCRYPTKEY, INVAL >
- + - + +  - + - + - + - + - + - + - + - + - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~crypt_key ()
virtual ~crypt_key ()
 Destroys the key.
 
bool create_exp1 (HCRYPTPROV hProv, DWORD dwKeySpec)
bool create_exp1 (HCRYPTPROV hProv, DWORD dwKeySpec)
 Creates Exponent-of-one key.
 
- Public Member Functions inherited from winstd::dplhandle< HCRYPTKEY, NULL >
dplhandle () noexcept
dplhandle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 dplhandle (handle_type h) noexcept
 dplhandle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 dplhandle (const dplhandle< handle_type, INVAL > &h)
 dplhandle (const dplhandle< handle_type, INVAL > &h)
 Copy constructor.
 
 dplhandle (dplhandle< handle_type, INVAL > &&h) noexcept
 dplhandle (dplhandle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
dplhandle< handle_type, INVAL > & operator= (handle_type h) noexcept
dplhandle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
dplhandle< handle_type, INVAL > & operator= (const dplhandle< handle_type, INVAL > &h) noexcept
dplhandle< handle_type, INVAL > & operator= (const dplhandle< handle_type, INVAL > &h) noexcept
 Duplicates the object.
 
dplhandle< handle_type, INVAL > & operator= (dplhandle< handle_type, INVAL > &&h) noexcept
dplhandle< handle_type, INVAL > & operator= (dplhandle< handle_type, INVAL > &&h) noexcept
 Moves the object.
 
handle_type duplicate () const
handle_type duplicate () const
 Duplicates and returns a new object handle.
 
void attach_duplicated (handle_type h)
void attach_duplicated (handle_type h)
 Duplicates an object handle and sets a new object handle.
 
- Public Member Functions inherited from winstd::handle< T, INVAL >
- Public Member Functions inherited from winstd::handle< HCRYPTKEY, INVAL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + - + + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Destroys the key.
 
handle_type duplicate_internal (handle_type h) const override
handle_type duplicate_internal (handle_type h) const override
 Duplicates the key.
 
- Protected Member Functions inherited from winstd::dplhandle< HCRYPTKEY, NULL >
- Protected Member Functions inherited from winstd::handle< HCRYPTKEY, INVAL >
- - - - - + + + + + +static const HCRYPTKEY  - + +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< T, INVAL >
-typedef T handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< T, INVAL >
- Public Types inherited from winstd::handle< HCRYPTKEY, INVAL >
+typedef HCRYPTKEY handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< HCRYPTKEY, INVAL >
-static const T invalid = INVAL
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< T, INVAL >
- Protected Attributes inherited from winstd::handle< HCRYPTKEY, INVAL >
-handle_type m_h
m_h
 Object handle.
 
@@ -244,9 +259,9 @@

- + - +
virtual winstd::crypt_key::~crypt_key virtual winstd::crypt_key::~crypt_key ())
@@ -273,14 +288,14 @@

- + - + - +
bool winstd::crypt_key::create_exp1 bool winstd::crypt_key::create_exp1 (HCRYPTPROV hProv, HCRYPTPROV hProv,
DWORD dwKeySpec )DWORD dwKeySpec )
@@ -312,9 +327,9 @@

- + - +
handle_type winstd::crypt_key::duplicate_internal handle_type winstd::crypt_key::duplicate_internal (handle_type h)handle_type h) const
@@ -349,9 +364,9 @@

- + - +
void winstd::crypt_key::free_internal void winstd::crypt_key::free_internal ())
@@ -365,7 +380,7 @@

See also
CryptDestroyKey function
-

Implements winstd::handle< T, INVAL >.

+

Implements winstd::handle< HCRYPTKEY, INVAL >.

@@ -375,7 +390,8 @@

+ diff --git a/classwinstd_1_1crypt__prov-members.html b/classwinstd_1_1crypt__prov-members.html index 53569e92..d30d96ed 100644 --- a/classwinstd_1_1crypt__prov-members.html +++ b/classwinstd_1_1crypt__prov-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@ - + + + + + diff --git a/classwinstd_1_1crypt__prov.html b/classwinstd_1_1crypt__prov.html index e35c3fe0..33d7c2b9 100644 --- a/classwinstd_1_1crypt__prov.html +++ b/classwinstd_1_1crypt__prov.html @@ -3,13 +3,15 @@ - + WinStd: winstd::crypt_prov Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -100,91 +113,92 @@ - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~crypt_prov ()
virtual ~crypt_prov ()
 Releases the cryptographic context.
 
- Public Member Functions inherited from winstd::handle< HCRYPTPROV, NULL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Releases the cryptographic context.
 
- Protected Member Functions inherited from winstd::handle< HCRYPTPROV, NULL >
- - - + + + +static const HCRYPTPROV  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< HCRYPTPROV, NULL >
-typedef HCRYPTPROV handle_type
 Datatype of the object handle this template class handles.
 
+typedef HCRYPTPROV handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< HCRYPTPROV, NULL >
-static const HCRYPTPROV invalid
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< HCRYPTPROV, NULL >
-handle_type m_h
m_h
 Object handle.
 
@@ -202,9 +216,9 @@

- + - +
virtual winstd::crypt_prov::~crypt_prov virtual winstd::crypt_prov::~crypt_prov ())
@@ -231,9 +245,9 @@

- + - +
void winstd::crypt_prov::free_internal void winstd::crypt_prov::free_internal ())
@@ -257,7 +271,8 @@

+

diff --git a/classwinstd_1_1data__blob-members.html b/classwinstd_1_1data__blob-members.html index 56fcf2e1..3fe9e6ab 100644 --- a/classwinstd_1_1data__blob-members.html +++ b/classwinstd_1_1data__blob-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::data_blob Member List
@@ -95,7 +108,8 @@
+ diff --git a/classwinstd_1_1data__blob.html b/classwinstd_1_1data__blob.html index ecfbb136..86940134 100644 --- a/classwinstd_1_1data__blob.html +++ b/classwinstd_1_1data__blob.html @@ -3,13 +3,15 @@ - + WinStd: winstd::data_blob Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -97,43 +110,43 @@

Public Member Functions

data_blob () noexceptdata_blob () noexcept  Initializes an empty BLOB.
  data_blob (BYTE *data, DWORD size) noexceptdata_blob (BYTE *data, DWORD size) noexcept  Initializes a BLOB from existing data.
  data_blob (const DATA_BLOB &other) + data_blob (const DATA_BLOB &other)  Duplicate an existing BLOB.
  data_blob (data_blob &&other) noexceptdata_blob (data_blob &&other) noexcept  Move an existing BLOB.
  -virtual ~data_blob () +virtual ~data_blob ()  Destroys the BLOB.
  -data_bloboperator= (const DATA_BLOB &other) +data_bloboperator= (const DATA_BLOB &other)  Copy an existing BLOB.
  -data_bloboperator= (data_blob &&other) noexcept +data_bloboperator= (data_blob &&other) noexcept  Move an existing BLOB.
  -DWORD size () const noexcept +DWORD size () const noexcept  Get BLOB size.
  -const BYTEdata () const noexcept +const BYTE * data () const noexcept  Get BLOB buffer.
  -BYTEdata () noexcept +BYTE * data () noexcept  Get BLOB buffer.
  @@ -145,7 +158,8 @@
+
diff --git a/classwinstd_1_1dc-members.html b/classwinstd_1_1dc-members.html index 90f17d5c..402ca097 100644 --- a/classwinstd_1_1dc-members.html +++ b/classwinstd_1_1dc-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + + +
winstd::dc Member List
@@ -89,7 +102,7 @@ handle() noexceptwinstd::handle< HDC, NULL >inline handle(handle_type h) noexceptwinstd::handle< HDC, NULL >inline handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< HDC, NULL >inline - handle_type typedefwinstd::handle< HDC, NULL > + handle_type typedefwinstd::handle< HDC, NULL > invalidwinstd::handle< HDC, NULL >static m_hwinstd::handle< HDC, NULL >protected operator handle_type() constwinstd::handle< HDC, NULL >inline @@ -109,7 +122,8 @@
+ diff --git a/classwinstd_1_1dc.html b/classwinstd_1_1dc.html index fb9b0343..2bab30e6 100644 --- a/classwinstd_1_1dc.html +++ b/classwinstd_1_1dc.html @@ -3,13 +3,15 @@ - + WinStd: winstd::dc Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -100,91 +113,92 @@ - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~dc ()
virtual ~dc ()
 Deletes the specified device context (DC).
 
- Public Member Functions inherited from winstd::handle< HDC, NULL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Deletes the specified device context (DC).
 
- Protected Member Functions inherited from winstd::handle< HDC, NULL >
- - - + + + +static const HDC  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< HDC, NULL >
-typedef HDC handle_type
 Datatype of the object handle this template class handles.
 
+typedef HDC handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< HDC, NULL >
-static const HDC invalid
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< HDC, NULL >
-handle_type m_h
m_h
 Object handle.
 
@@ -201,9 +215,9 @@

- + - +
virtual winstd::dc::~dc virtual winstd::dc::~dc ())
@@ -230,9 +244,9 @@

- + - +
void winstd::dc::free_internal void winstd::dc::free_internal ())
@@ -256,7 +270,8 @@

+

diff --git a/classwinstd_1_1dc__selector-members.html b/classwinstd_1_1dc__selector-members.html index 518bfdcf..b2185631 100644 --- a/classwinstd_1_1dc__selector-members.html +++ b/classwinstd_1_1dc__selector-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::dc_selector Member List
@@ -90,7 +103,8 @@
+ diff --git a/classwinstd_1_1dc__selector.html b/classwinstd_1_1dc__selector.html index dfc3afc8..b203ea34 100644 --- a/classwinstd_1_1dc__selector.html +++ b/classwinstd_1_1dc__selector.html @@ -3,13 +3,15 @@ - + WinStd: winstd::dc_selector Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -91,24 +104,24 @@ - + - + - +

Public Member Functions

 dc_selector (HDC hdc, HGDIOBJ h) noexcept
 dc_selector (HDC hdc, HGDIOBJ h) noexcept
 Selects an object into the specified device context (DC). The new object replaces the previous object of the same type.
 
virtual ~dc_selector ()
virtual ~dc_selector ()
 Restores original object.
 
HGDIOBJ status () const noexcept
HGDIOBJ status () const noexcept
 Return result of SelectObject() call.
 
+HDC  +HGDIOBJ 

Protected Attributes

-HDC m_hdc
m_hdc
 A handle to the device context.
 
-HGDIOBJ m_orig
m_orig
 Original object handle.
 
@@ -127,12 +140,12 @@

winstd::dc_selector::dc_selector ( - HDC hdc, + HDC hdc, - HGDIOBJ h ) + HGDIOBJ h ) @@ -157,9 +170,9 @@

- + - +
virtual winstd::dc_selector::~dc_selector virtual winstd::dc_selector::~dc_selector ())
@@ -186,9 +199,9 @@

- + - +
HGDIOBJ winstd::dc_selector::status HGDIOBJ winstd::dc_selector::status ()) const
@@ -210,7 +223,8 @@

+

diff --git a/classwinstd_1_1dplhandle-members.html b/classwinstd_1_1dplhandle-members.html index f135a5c8..c48d0628 100644 --- a/classwinstd_1_1dplhandle-members.html +++ b/classwinstd_1_1dplhandle-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::dplhandle< T, INVAL > Member List
@@ -96,7 +109,7 @@ handle() noexceptwinstd::handle< T, INVAL >inline handle(handle_type h) noexceptwinstd::handle< T, INVAL >inline handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< T, INVAL >inline - handle_type typedefwinstd::handle< T, INVAL > + handle_type typedefwinstd::handle< T, INVAL > invalidwinstd::handle< T, INVAL >static m_hwinstd::handle< T, INVAL >protected operator handle_type() constwinstd::handle< T, INVAL >inline @@ -117,7 +130,8 @@
+ diff --git a/classwinstd_1_1dplhandle.html b/classwinstd_1_1dplhandle.html index dd1b1607..9281070f 100644 --- a/classwinstd_1_1dplhandle.html +++ b/classwinstd_1_1dplhandle.html @@ -3,13 +3,15 @@ - + WinStd: winstd::dplhandle< T, INVAL > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -101,124 +114,124 @@

Public Member Functions

dplhandle () noexceptdplhandle () noexcept  Initializes a new class instance with the object handle set to INVAL.
  - dplhandle (handle_type h) noexceptdplhandle (handle_type h) noexcept  Initializes a new class instance with an already available object handle.
  - dplhandle (const dplhandle< handle_type, INVAL > &h) + dplhandle (const dplhandle< handle_type, INVAL > &h)  Copy constructor.
  - dplhandle (dplhandle< handle_type, INVAL > &&h) noexceptdplhandle (dplhandle< handle_type, INVAL > &&h) noexcept  Move constructor.
  -dplhandle< handle_type, INVAL > & operator= (handle_type h) noexcept +dplhandle< handle_type, INVAL > & operator= (handle_type h) noexcept  Attaches already available object handle.
  -dplhandle< handle_type, INVAL > & operator= (const dplhandle< handle_type, INVAL > &h) noexcept +dplhandle< handle_type, INVAL > & operator= (const dplhandle< handle_type, INVAL > &h) noexcept  Duplicates the object.
  -dplhandle< handle_type, INVAL > & operator= (dplhandle< handle_type, INVAL > &&h) noexcept +dplhandle< handle_type, INVAL > & operator= (dplhandle< handle_type, INVAL > &&h) noexcept  Moves the object.
  -handle_type duplicate () const +handle_type duplicate () const  Duplicates and returns a new object handle.
  -void attach_duplicated (handle_type h) +void attach_duplicated (handle_type h)  Duplicates an object handle and sets a new object handle.
  - Public Member Functions inherited from winstd::handle< T, INVAL >handle () noexcepthandle () noexcept  Initializes a new class instance with the object handle set to INVAL.
  - handle (handle_type h) noexcepthandle (handle_type h) noexcept  Initializes a new class instance with an already available object handle.
  - handle (handle< handle_type, INVAL > &&h) noexcepthandle (handle< handle_type, INVAL > &&h) noexcept  Move constructor.
  -handle< handle_type, INVAL > & operator= (handle_type h) noexcept +handle< handle_type, INVAL > & operator= (handle_type h) noexcept  Attaches already available object handle.
  -handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept +handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept  Move assignment.
  - operator handle_type () constoperator handle_type () const  Auto-typecasting operator.
  -handle_type *& operator* () const +handle_type *& operator* () const  Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
  -handle_typeoperator& () +handle_typeoperator& ()  Returns the object handle reference.
  -handle_type operator-> () const +handle_type operator-> () const  Provides object handle member access when the object handle is a pointer to a class or struct.
  -bool operator! () const +bool operator! () const  Tests if the object handle is invalid.
  -bool operator< (handle_type h) const +bool operator< (handle_type h) const  Is handle less than?
  -bool operator<= (handle_type h) const +bool operator<= (handle_type h) const  Is handle less than or equal to?
  -bool operator>= (handle_type h) const +bool operator>= (handle_type h) const  Is handle greater than or equal to?
  -bool operator> (handle_type h) const +bool operator> (handle_type h) const  Is handle greater than?
  -bool operator!= (handle_type h) const +bool operator!= (handle_type h) const  Is handle not equal to?
  -bool operator== (handle_type h) const +bool operator== (handle_type h) const  Is handle equal to?
  -void attach (handle_type h) noexcept +void attach (handle_type h) noexcept  Sets a new object handle for the class.
  -handle_type detach () +handle_type detach ()  Dismisses the object handle from this class.
  -void free () +void free ()  Destroys the object.
  - + - +

Protected Member Functions

virtual handle_type duplicate_internal (handle_type h) const =0
virtual handle_type duplicate_internal (handle_type h) const =0
 Abstract member function that must be implemented by child classes to do the actual object handle duplication. On failure, it should throw appropriate exception describing the cause, rather than return an invalid handle.
 
- Protected Member Functions inherited from winstd::handle< T, INVAL >
virtual void free_internal () noexcept=0
virtual void free_internal () noexcept=0
 Abstract member function that must be implemented by child classes to do the actual object destruction.
 
- - - + + + +static const T  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< T, INVAL >
-typedef T handle_type
 Datatype of the object handle this template class handles.
 
+typedef T handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< T, INVAL >
-static const T invalid = INVAL
invalid = INVAL
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< T, INVAL >
-handle_type m_h
m_h
 Object handle.
 

Detailed Description

-
template<class T, T INVAL>
+
template<class T, T INVAL>
class winstd::dplhandle< T, INVAL >

Base abstract template class to support object handle keeping for objects that support trivial handle duplication.

Constructor & Destructor Documentation

@@ -227,15 +240,15 @@

-template<class T , T INVAL>
+template<class T , T INVAL>
- + - +
winstd::dplhandle< T, INVAL >::dplhandle winstd::dplhandle< T, INVAL >::dplhandle (handle_type h)handle_type h)
@@ -262,15 +275,15 @@

-template<class T , T INVAL>
+template<class T , T INVAL>
+  - + - +
- + - +
winstd::dplhandle< T, INVAL >::dplhandle winstd::dplhandle< T, INVAL >::dplhandle (const dplhandle< handle_type, INVAL > & h)const dplhandle< handle_type, INVAL > & h)
@@ -297,15 +310,15 @@

-template<class T , T INVAL>
+template<class T , T INVAL>
- + - +
winstd::dplhandle< T, INVAL >::dplhandle winstd::dplhandle< T, INVAL >::dplhandle (dplhandle< handle_type, INVAL > && h)dplhandle< handle_type, INVAL > && h)
@@ -333,15 +346,15 @@

-template<class T , T INVAL>
+template<class T , T INVAL>
- + - +
void winstd::dplhandle< T, INVAL >::attach_duplicated void winstd::dplhandle< T, INVAL >::attach_duplicated (handle_type h)handle_type h)
@@ -368,15 +381,15 @@

-template<class T , T INVAL>
+template<class T , T INVAL>
@@ -174,7 +187,8 @@

+ diff --git a/classwinstd_1_1eap__method__info__array-members.html b/classwinstd_1_1eap__method__info__array-members.html index 4a5aab3e..9c101cc1 100644 --- a/classwinstd_1_1eap__method__info__array-members.html +++ b/classwinstd_1_1eap__method__info__array-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + - +
handle_type winstd::dplhandle< T, INVAL >::duplicate handle_type winstd::dplhandle< T, INVAL >::duplicate ()) const
@@ -398,15 +411,15 @@

-template<class T , T INVAL>
+template<class T , T INVAL>
+  +  +  +eap_attr &  +eap_attr &  - +
- + - +
virtual handle_type winstd::dplhandle< T, INVAL >::duplicate_internal virtual handle_type winstd::dplhandle< T, INVAL >::duplicate_internal (handle_type h)handle_type h) const
@@ -426,7 +439,7 @@

Returns
Duplicated object handle
-

Implemented in winstd::bstr, winstd::safearray, winstd::cert_context, winstd::cert_chain_context, winstd::crypt_hash, winstd::crypt_key, and winstd::eap_packet.

+

Implemented in winstd::bstr, winstd::cert_chain_context, winstd::cert_context, winstd::crypt_hash, winstd::crypt_key, winstd::eap_packet, and winstd::safearray.

@@ -436,15 +449,15 @@

-template<class T , T INVAL>
+template<class T , T INVAL>
- + - +
dplhandle< handle_type, INVAL > & winstd::dplhandle< T, INVAL >::operator= dplhandle< handle_type, INVAL > & winstd::dplhandle< T, INVAL >::operator= (const dplhandle< handle_type, INVAL > & h)const dplhandle< handle_type, INVAL > & h)
@@ -471,15 +484,15 @@

-template<class T , T INVAL>
+template<class T , T INVAL>
- + - +
dplhandle< handle_type, INVAL > & winstd::dplhandle< T, INVAL >::operator= dplhandle< handle_type, INVAL > & winstd::dplhandle< T, INVAL >::operator= (dplhandle< handle_type, INVAL > && h)dplhandle< handle_type, INVAL > && h)
@@ -506,15 +519,15 @@

-template<class T , T INVAL>
+template<class T , T INVAL>
- + - +
dplhandle< handle_type, INVAL > & winstd::dplhandle< T, INVAL >::operator= dplhandle< handle_type, INVAL > & winstd::dplhandle< T, INVAL >::operator= (handle_type h)handle_type h)
@@ -541,7 +554,8 @@

+ diff --git a/classwinstd_1_1eap__attr-members.html b/classwinstd_1_1eap__attr-members.html index 06fb174e..fe2c0f9c 100644 --- a/classwinstd_1_1eap__attr-members.html +++ b/classwinstd_1_1eap__attr-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + + +
winstd::eap_attr Member List
@@ -92,7 +105,8 @@

+ diff --git a/classwinstd_1_1eap__attr.html b/classwinstd_1_1eap__attr.html index 296eb87d..4f95358e 100644 --- a/classwinstd_1_1eap__attr.html +++ b/classwinstd_1_1eap__attr.html @@ -3,13 +3,15 @@ - + WinStd: winstd::eap_attr Class Reference + + @@ -32,23 +34,33 @@

- + + + +
Public Member Functions | @@ -97,15 +110,15 @@

Public Member Functions

eap_attr () noexcept
eap_attr () noexcept
 Initializes a new EAP attribute set to eatReserved.
 
eap_attr (const EAP_ATTRIBUTE &a)
eap_attr (const EAP_ATTRIBUTE &a)
 Copies an existing EAP attribute.
 
eap_attr (eap_attr &&a) noexcept
eap_attr (eap_attr &&a) noexcept
 Moves an existing EAP attribute.
 
@@ -113,14 +126,14 @@
 Destroys the EAP attribute.
 
-eap_attroperator= (const EAP_ATTRIBUTE &a)
operator= (const EAP_ATTRIBUTE &a)
 Copies an existing EAP attribute.
 
-eap_attroperator= (eap_attr &&a) noexcept
operator= (eap_attr &&a) noexcept
 Moves an existing EAP attribute.
 
void create_ms_mppe_key (BYTE bVendorType, LPCBYTE pbKey, BYTE nKeySize)
void create_ms_mppe_key (BYTE bVendorType, LPCBYTE pbKey, BYTE nKeySize)
 Creates MS-MPPE-Send-Key or MS-MPPE-Recv-Key.
 
@@ -137,19 +150,19 @@

- + - + - + - +
void winstd::eap_attr::create_ms_mppe_key void winstd::eap_attr::create_ms_mppe_key (BYTE bVendorType, BYTE bVendorType,
LPCBYTE pbKey, LPCBYTE pbKey,
BYTE nKeySize )BYTE nKeySize )

- + + + +
winstd::eap_method_info_array Member List
@@ -89,7 +102,8 @@

+ diff --git a/classwinstd_1_1eap__method__info__array.html b/classwinstd_1_1eap__method__info__array.html index 0632237e..54a988c9 100644 --- a/classwinstd_1_1eap__method__info__array.html +++ b/classwinstd_1_1eap__method__info__array.html @@ -3,13 +3,15 @@ - + WinStd: winstd::eap_method_info_array Class Reference + + @@ -32,23 +34,33 @@

- + + + +
Public Member Functions | @@ -97,17 +110,17 @@

Public Member Functions

eap_method_info_array () noexcept
eap_method_info_array () noexcept
 Constructs an empty array.
 
 eap_method_info_array (eap_method_info_array &&other) noexcept
 eap_method_info_array (eap_method_info_array &&other) noexcept
 Move constructor.
 
 ~eap_method_info_array ()
 Destructor.
 
eap_method_info_arrayoperator= (eap_method_info_array &&other) noexcept
eap_method_info_arrayoperator= (eap_method_info_array &&other) noexcept
 Move assignment.
 
@@ -187,7 +200,8 @@

+ diff --git a/classwinstd_1_1eap__method__prop-members.html b/classwinstd_1_1eap__method__prop-members.html index b48b0466..6f46a55a 100644 --- a/classwinstd_1_1eap__method__prop-members.html +++ b/classwinstd_1_1eap__method__prop-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + +
+
winstd::eap_method_prop Member List
@@ -88,7 +101,8 @@
+
diff --git a/classwinstd_1_1eap__method__prop.html b/classwinstd_1_1eap__method__prop.html index 474787fa..6c867ab6 100644 --- a/classwinstd_1_1eap__method__prop.html +++ b/classwinstd_1_1eap__method__prop.html @@ -3,13 +3,15 @@ - + WinStd: winstd::eap_method_prop Class Reference + + @@ -32,23 +34,33 @@
- + + +
+
Public Member Functions | @@ -96,13 +109,13 @@ - + - + - +

Public Member Functions

 eap_method_prop (EAP_METHOD_PROPERTY_TYPE type, BOOL value) noexcept
 eap_method_prop (EAP_METHOD_PROPERTY_TYPE type, BOOL value) noexcept
 Constructs a BOOL method property.
 
 eap_method_prop (EAP_METHOD_PROPERTY_TYPE type, DWORD value) noexcept
 eap_method_prop (EAP_METHOD_PROPERTY_TYPE type, DWORD value) noexcept
 Constructs a DWORD method property.
 
 eap_method_prop (EAP_METHOD_PROPERTY_TYPE type, LPCWSTR value) noexcept
 eap_method_prop (EAP_METHOD_PROPERTY_TYPE type, LPCWSTR value) noexcept
 Constructs a Unicode string method property.
 
@@ -121,12 +134,12 @@

winstd::eap_method_prop::eap_method_prop ( - EAP_METHOD_PROPERTY_TYPE type, + EAP_METHOD_PROPERTY_TYPE type, - BOOL value ) + BOOL value ) @@ -159,12 +172,12 @@

winstd::eap_method_prop::eap_method_prop ( - EAP_METHOD_PROPERTY_TYPE type, + EAP_METHOD_PROPERTY_TYPE type, - DWORD value ) + DWORD value ) @@ -197,12 +210,12 @@

winstd::eap_method_prop::eap_method_prop ( - EAP_METHOD_PROPERTY_TYPE type, + EAP_METHOD_PROPERTY_TYPE type, - LPCWSTR value ) + LPCWSTR value ) @@ -229,7 +242,8 @@

+

diff --git a/classwinstd_1_1eap__packet-members.html b/classwinstd_1_1eap__packet-members.html index cbd3884d..69058270 100644 --- a/classwinstd_1_1eap__packet-members.html +++ b/classwinstd_1_1eap__packet-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::eap_packet Member List
@@ -82,45 +95,46 @@

This is the complete list of members for winstd::eap_packet, including all inherited members.

- + - + - + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - + + + +
attach(handle_type h) noexceptwinstd::handle< T, INVAL >inline
attach(handle_type h) noexceptwinstd::handle< EapPacket *, INVAL >inline
attach_duplicated(handle_type h)winstd::dplhandle< EapPacket *, NULL >inline
create(EapCode code, BYTE id, WORD size) noexceptwinstd::eap_packetinline
detach()winstd::handle< T, INVAL >inline
detach()winstd::handle< EapPacket *, INVAL >inline
dplhandle() noexceptwinstd::dplhandle< EapPacket *, NULL >inline
dplhandle(handle_type h) noexceptwinstd::dplhandle< EapPacket *, NULL >inline
dplhandle(const dplhandle< handle_type, INVAL > &h)winstd::dplhandle< EapPacket *, NULL >inline
dplhandle(dplhandle< handle_type, INVAL > &&h) noexceptwinstd::dplhandle< EapPacket *, NULL >inline
duplicate() constwinstd::dplhandle< EapPacket *, NULL >inline
duplicate_internal(handle_type h) const overridewinstd::eap_packetinlineprotectedvirtual
free()winstd::handle< T, INVAL >inline
free()winstd::handle< EapPacket *, INVAL >inline
free_internal() noexcept overridewinstd::eap_packetinlineprotectedvirtual
handle() noexceptwinstd::handle< T, INVAL >inline
handle(handle_type h) noexceptwinstd::handle< T, INVAL >inline
handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< T, INVAL >inline
handle_type typedefwinstd::handle< T, INVAL >
invalidwinstd::handle< T, INVAL >static
m_hwinstd::handle< T, INVAL >protected
operator handle_type() constwinstd::handle< T, INVAL >inline
operator!() constwinstd::handle< T, INVAL >inline
operator!=(handle_type h) constwinstd::handle< T, INVAL >inline
operator&()winstd::handle< T, INVAL >inline
operator*() constwinstd::handle< T, INVAL >inline
operator->() constwinstd::handle< T, INVAL >inline
operator<(handle_type h) constwinstd::handle< T, INVAL >inline
operator<=(handle_type h) constwinstd::handle< T, INVAL >inline
handle() noexceptwinstd::handle< EapPacket *, INVAL >inline
handle(handle_type h) noexceptwinstd::handle< EapPacket *, INVAL >inline
handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< EapPacket *, INVAL >inline
handle_type typedefwinstd::handle< EapPacket *, INVAL >
invalidwinstd::handle< EapPacket *, INVAL >static
m_hwinstd::handle< EapPacket *, INVAL >protected
operator handle_type() constwinstd::handle< EapPacket *, INVAL >inline
operator!() constwinstd::handle< EapPacket *, INVAL >inline
operator!=(handle_type h) constwinstd::handle< EapPacket *, INVAL >inline
operator&()winstd::handle< EapPacket *, INVAL >inline
operator*() constwinstd::handle< EapPacket *, INVAL >inline
operator->() constwinstd::handle< EapPacket *, INVAL >inline
operator<(handle_type h) constwinstd::handle< EapPacket *, INVAL >inline
operator<=(handle_type h) constwinstd::handle< EapPacket *, INVAL >inline
operator=(handle_type h) noexceptwinstd::dplhandle< EapPacket *, NULL >inline
operator=(const dplhandle< handle_type, INVAL > &h) noexceptwinstd::dplhandle< EapPacket *, NULL >inline
operator=(dplhandle< handle_type, INVAL > &&h) noexceptwinstd::dplhandle< EapPacket *, NULL >inline
winstd::handle::operator=(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< T, INVAL >inline
operator==(handle_type h) constwinstd::handle< T, INVAL >inline
operator>(handle_type h) constwinstd::handle< T, INVAL >inline
operator>=(handle_type h) constwinstd::handle< T, INVAL >inline
winstd::handle< EapPacket *, INVAL >::operator=(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< EapPacket *, INVAL >inline
operator==(handle_type h) constwinstd::handle< EapPacket *, INVAL >inline
operator>(handle_type h) constwinstd::handle< EapPacket *, INVAL >inline
operator>=(handle_type h) constwinstd::handle< EapPacket *, INVAL >inline
size() const noexceptwinstd::eap_packetinline
~eap_packet()winstd::eap_packetinlinevirtual
+ diff --git a/classwinstd_1_1eap__packet.html b/classwinstd_1_1eap__packet.html index 4c1995e0..054c67dc 100644 --- a/classwinstd_1_1eap__packet.html +++ b/classwinstd_1_1eap__packet.html @@ -3,13 +3,15 @@ - + WinStd: winstd::eap_packet Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -95,137 +108,139 @@ winstd::dplhandle< EapPacket *, NULL > -winstd::handle< T, INVAL > +winstd::handle< EapPacket *, INVAL >
+virtual  - + +WORD  +  - + - + - + - + - + - + - + - + - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

-virtual ~eap_packet ()
~eap_packet ()
 Destroys the EAP packet.
 
bool create (EapCode code, BYTE id, WORD size) noexcept
bool create (EapCode code, BYTE id, WORD size) noexcept
 Create new EAP packet.
 
-WORD size () const noexcept
size () const noexcept
 Returns total EAP packet size in bytes.
 
- Public Member Functions inherited from winstd::dplhandle< EapPacket *, NULL >
dplhandle () noexcept
dplhandle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 dplhandle (handle_type h) noexcept
 dplhandle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 dplhandle (const dplhandle< handle_type, INVAL > &h)
 dplhandle (const dplhandle< handle_type, INVAL > &h)
 Copy constructor.
 
 dplhandle (dplhandle< handle_type, INVAL > &&h) noexcept
 dplhandle (dplhandle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
dplhandle< handle_type, INVAL > & operator= (handle_type h) noexcept
dplhandle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
dplhandle< handle_type, INVAL > & operator= (const dplhandle< handle_type, INVAL > &h) noexcept
dplhandle< handle_type, INVAL > & operator= (const dplhandle< handle_type, INVAL > &h) noexcept
 Duplicates the object.
 
dplhandle< handle_type, INVAL > & operator= (dplhandle< handle_type, INVAL > &&h) noexcept
dplhandle< handle_type, INVAL > & operator= (dplhandle< handle_type, INVAL > &&h) noexcept
 Moves the object.
 
handle_type duplicate () const
handle_type duplicate () const
 Duplicates and returns a new object handle.
 
void attach_duplicated (handle_type h)
void attach_duplicated (handle_type h)
 Duplicates an object handle and sets a new object handle.
 
- Public Member Functions inherited from winstd::handle< T, INVAL >
- Public Member Functions inherited from winstd::handle< EapPacket *, INVAL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + - + + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Destroys the EAP packet.
 
handle_type duplicate_internal (handle_type h) const override
handle_type duplicate_internal (handle_type h) const override
 Duplicates the EAP packet.
 
- Protected Member Functions inherited from winstd::dplhandle< EapPacket *, NULL >
- Protected Member Functions inherited from winstd::handle< EapPacket *, INVAL >
- - - - - + + + + + +static const EapPacket *  - + +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< T, INVAL >
-typedef T handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< T, INVAL >
- Public Types inherited from winstd::handle< EapPacket *, INVAL >
+typedef EapPacket * handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< EapPacket *, INVAL >
-static const T invalid = INVAL
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< T, INVAL >
- Protected Attributes inherited from winstd::handle< EapPacket *, INVAL >
-handle_type m_h
m_h
 Object handle.
 
@@ -242,19 +257,19 @@

- + - + - + - +
bool winstd::eap_packet::create bool winstd::eap_packet::create (EapCode code, EapCode code,
BYTE id, BYTE id,
WORD size )WORD size )
@@ -292,9 +307,9 @@

- + - +
handle_type winstd::eap_packet::duplicate_internal handle_type winstd::eap_packet::duplicate_internal (handle_type h)handle_type h) const
@@ -321,9 +336,9 @@

- + - +
void winstd::eap_packet::free_internal void winstd::eap_packet::free_internal ())
@@ -336,7 +351,7 @@

winstd::handle< T, INVAL >.

+

Implements winstd::handle< EapPacket *, INVAL >.

@@ -346,7 +361,8 @@

+ diff --git a/classwinstd_1_1eap__runtime__error-members.html b/classwinstd_1_1eap__runtime__error-members.html index 2485ab0e..8900b97c 100644 --- a/classwinstd_1_1eap__runtime__error-members.html +++ b/classwinstd_1_1eap__runtime__error-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@ - + + + +
winstd::eap_runtime_error Member List
@@ -85,7 +98,7 @@ eap_runtime_error(const EAP_ERROR &err, const std::string &msg)winstd::eap_runtime_errorinline eap_runtime_error(const EAP_ERROR &err)winstd::eap_runtime_errorinline eap_runtime_error(const EAP_ERROR &err, const char *msg)winstd::eap_runtime_errorinline - error_type typedefwinstd::num_runtime_error< DWORD > + error_type typedefwinstd::num_runtime_error< DWORD > help_link_id() const noexceptwinstd::eap_runtime_errorinline m_help_link_idwinstd::eap_runtime_errorprotected m_numwinstd::num_runtime_error< DWORD >protected @@ -114,7 +127,8 @@
+ diff --git a/classwinstd_1_1eap__runtime__error.html b/classwinstd_1_1eap__runtime__error.html index 243766fa..3f4800fb 100644 --- a/classwinstd_1_1eap__runtime__error.html +++ b/classwinstd_1_1eap__runtime__error.html @@ -3,13 +3,15 @@ - + WinStd: winstd::eap_runtime_error Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -101,87 +114,87 @@ - + - + - + +const EAP_METHOD_TYPE &  +DWORD  +const GUID &  +const wchar_t *  +const GUID &  +const wchar_t *  +const GUID &  - + - + - + - + - + - + - + +error_type 

Public Member Functions

 eap_runtime_error (const EAP_ERROR &err, const std::string &msg)
 eap_runtime_error (const EAP_ERROR &err, const std::string &msg)
 Constructs an exception.
 
 eap_runtime_error (const EAP_ERROR &err)
 eap_runtime_error (const EAP_ERROR &err)
 Constructs an exception.
 
 eap_runtime_error (const EAP_ERROR &err, const char *msg)
 eap_runtime_error (const EAP_ERROR &err, const char *msg)
 Constructs an exception.
 
-const EAP_METHOD_TYPEtype () const noexcept
type () const noexcept
 Returns EAP method type.
 
-DWORD reason () const noexcept
reason () const noexcept
 Returns the reason code for error.
 
-const GUIDroot_cause_id () const noexcept
root_cause_id () const noexcept
 Returns root cause ID.
 
-const wchar_troot_cause () const noexcept
root_cause () const noexcept
 Returns root cause ID.
 
-const GUIDrepair_id () const noexcept
repair_id () const noexcept
 Returns repair ID.
 
-const wchar_trepair () const noexcept
repair () const noexcept
 Returns root cause ID.
 
-const GUIDhelp_link_id () const noexcept
help_link_id () const noexcept
 Returns help_link ID.
 
- Public Member Functions inherited from winstd::win_runtime_error
 win_runtime_error (error_type num)
 win_runtime_error (error_type num)
 Constructs an exception.
 
 win_runtime_error (error_type num, const std::string &msg)
 win_runtime_error (error_type num, const std::string &msg)
 Constructs an exception.
 
 win_runtime_error (error_type num, const char *msg)
 win_runtime_error (error_type num, const char *msg)
 Constructs an exception.
 
 win_runtime_error ()
 Constructs an exception using GetLastError()
 
 win_runtime_error (const std::string &msg)
 win_runtime_error (const std::string &msg)
 Constructs an exception using GetLastError()
 
 win_runtime_error (const char *msg)
 win_runtime_error (const char *msg)
 Constructs an exception using GetLastError()
 
- Public Member Functions inherited from winstd::num_runtime_error< DWORD >
 num_runtime_error (error_type num, const std::string &msg)
 num_runtime_error (error_type num, const std::string &msg)
 Constructs an exception.
 
 num_runtime_error (error_type num, const char *msg=nullptr)
 num_runtime_error (error_type num, const char *msg=nullptr)
 Constructs an exception.
 
-error_type number () const
number () const
 Returns the error number.
 
+EAP_METHOD_TYPE  +DWORD  +GUID  +GUID  +GUID  +error_type 

Protected Attributes

-EAP_METHOD_TYPE m_type
m_type
 Structure that identifies the EAP method that raised the error.
 
-DWORD m_reason
m_reason
 The reason code for the error.
 
-GUID m_root_cause_id
m_root_cause_id
 A unique ID that identifies cause of error in EAPHost.
 
@@ -189,7 +202,7 @@
 A localized and readable string that describes the root cause of the error.
 
-GUID m_repair_id
m_repair_id
 A unique ID that maps to a localizable string that identifies the repair action that can be taken to fix the reported error.
 
@@ -197,24 +210,24 @@
 A localized and readable string that describes the possible repair action.
 
-GUID m_help_link_id
m_help_link_id
 A unique ID that maps to a localizable string that specifies an URL for a page that contains additional information about an error or repair message.
 
- Protected Attributes inherited from winstd::num_runtime_error< DWORD >
-error_type m_num
m_num
 Numeric error code.
 
- - - + + + - +

Additional Inherited Members

- Public Types inherited from winstd::num_runtime_error< DWORD >
-typedef DWORD error_type
 Error number type.
 
+typedef DWORD error_type
 Error number type.
 
- Static Protected Member Functions inherited from winstd::win_runtime_error
static std::string message (error_type num, DWORD dwLanguageId=0)
static std::string message (error_type num, DWORD dwLanguageId=0)
 Returns a user-readable Windows error message. As std::exception messages may only be char*, we use UTF-8 by convention.
 
@@ -234,12 +247,12 @@

winstd::eap_runtime_error::eap_runtime_error ( - const EAP_ERROR & err, + const EAP_ERROR & err, - const std::string & msg ) + const std::string & msg ) @@ -272,7 +285,7 @@

winstd::eap_runtime_error::eap_runtime_error ( - const EAP_ERROR & err) + const EAP_ERROR & err) @@ -305,12 +318,12 @@

winstd::eap_runtime_error::eap_runtime_error ( - const EAP_ERROR & err, + const EAP_ERROR & err, - const char * msg ) + const char * msg ) @@ -337,7 +350,8 @@

+

diff --git a/classwinstd_1_1event__data-members.html b/classwinstd_1_1event__data-members.html index 311384f5..ad5a1302 100644 --- a/classwinstd_1_1event__data-members.html +++ b/classwinstd_1_1event__data-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::event_data Member List
@@ -97,7 +110,8 @@
+ diff --git a/classwinstd_1_1event__data.html b/classwinstd_1_1event__data.html index 9b12b107..2eb4d57f 100644 --- a/classwinstd_1_1event__data.html +++ b/classwinstd_1_1event__data.html @@ -3,13 +3,15 @@ - + WinStd: winstd::event_data Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -100,38 +113,38 @@  event_data ()  Construct empty class.
  - event_data (const char &data) + event_data (const char &data)  Construct class pointing to an char.
  - event_data (const unsigned char &data) + event_data (const unsigned char &data)  Construct class pointing to an unsigned char.
  - event_data (const int &data) + event_data (const int &data)  Construct class pointing to an int.
  - event_data (const unsigned int &data) + event_data (const unsigned int &data)  Construct class pointing to an unsigned int.
  - event_data (const long &data) + event_data (const long &data)  Construct class pointing to a long.
  - event_data (const unsigned long &data) + event_data (const unsigned long &data)  Construct class pointing to an unsigned long.
  - event_data (const GUID &data) + event_data (const GUID &data)  Construct class pointing to a GUID.
  - event_data (const char *data) + event_data (const char *data)  Construct class pointing to a string.
  - event_data (const wchar_t *data) + event_data (const wchar_t *data)  Construct class pointing to a wide string.
  -template<class _Elem , class _Traits , class _Ax > - event_data (const std::basic_string< _Elem, _Traits, _Ax > &data) +template<class _Elem , class _Traits , class _Ax > + event_data (const std::basic_string< _Elem, _Traits, _Ax > &data)  Template to construct pointing to a std::basic_string<>.
  - event_data (const void *data, ULONG size) + event_data (const void *data, ULONG size)  Construct class pointing to binary data.
  @@ -150,7 +163,7 @@

winstd::event_data::event_data ( - const char & data) + const char & data) @@ -184,7 +197,7 @@

winstd::event_data::event_data ( - const unsigned char & data) + const unsigned char & data) @@ -218,7 +231,7 @@

winstd::event_data::event_data ( - const int & data) + const int & data) @@ -252,7 +265,7 @@

winstd::event_data::event_data ( - const unsigned int & data) + const unsigned int & data) @@ -286,7 +299,7 @@

winstd::event_data::event_data ( - const long & data) + const long & data) @@ -320,7 +333,7 @@

winstd::event_data::event_data ( - const unsigned long & data) + const unsigned long & data) @@ -354,7 +367,7 @@

winstd::event_data::event_data ( - const GUID & data) + const GUID & data) @@ -388,7 +401,7 @@

winstd::event_data::event_data ( - const char * data) + const char * data) @@ -422,7 +435,7 @@

winstd::event_data::event_data ( - const wchar_t * data) + const wchar_t * data) @@ -450,7 +463,7 @@

+template<class _Elem , class _Traits , class _Ax >
- +
@@ -458,7 +471,7 @@

winstd::event_data::event_data

(const std::basic_string< _Elem, _Traits, _Ax > & data)const std::basic_string< _Elem, _Traits, _Ax > & data)
@@ -492,12 +505,12 @@

winstd::event_data::event_data ( - const void * data, + const void * data, - ULONG size ) + ULONG size ) @@ -525,7 +538,8 @@

+

diff --git a/classwinstd_1_1event__fn__auto-members.html b/classwinstd_1_1event__fn__auto-members.html index 18f951d1..785766b5 100644 --- a/classwinstd_1_1event__fn__auto-members.html +++ b/classwinstd_1_1event__fn__auto-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::event_fn_auto Member List
@@ -94,7 +107,8 @@
+ diff --git a/classwinstd_1_1event__fn__auto.html b/classwinstd_1_1event__fn__auto.html index e02a8030..7d3c1b15 100644 --- a/classwinstd_1_1event__fn__auto.html +++ b/classwinstd_1_1event__fn__auto.html @@ -3,13 +3,15 @@ - + WinStd: winstd::event_fn_auto Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -92,15 +105,15 @@

Public Member Functions

event_fn_auto (event_provider &ep, const EVENT_DESCRIPTOR *event_cons, const EVENT_DESCRIPTOR *event_dest, LPCSTR pszFnName) + event_fn_auto (event_provider &ep, const EVENT_DESCRIPTOR *event_cons, const EVENT_DESCRIPTOR *event_dest, LPCSTR pszFnName)  Writes the event_cons event.
  event_fn_auto (const event_fn_auto &other) + event_fn_auto (const event_fn_auto &other)  Copies the object.
  event_fn_auto (event_fn_auto &&other) noexceptevent_fn_auto (event_fn_auto &&other) noexcept  Moves the object.
  @@ -108,11 +121,11 @@  Writes the event_dest event.
  -event_fn_autooperator= (const event_fn_auto &other) +event_fn_autooperator= (const event_fn_auto &other)  Copies the object.
  -event_fn_autooperator= (event_fn_auto &&other) noexcept +event_fn_autooperator= (event_fn_auto &&other) noexcept  Moves the object.
  @@ -123,7 +136,7 @@ +const EVENT_DESCRIPTOR * 
 Reference to event provider in use.
 
-const EVENT_DESCRIPTORm_event_dest
m_event_dest
 Event descriptor at destruction.
 
@@ -140,7 +153,8 @@ + diff --git a/classwinstd_1_1event__fn__auto__ret-members.html b/classwinstd_1_1event__fn__auto__ret-members.html index 979c40dd..9ee9f8d8 100644 --- a/classwinstd_1_1event__fn__auto__ret-members.html +++ b/classwinstd_1_1event__fn__auto__ret-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::event_fn_auto_ret< T > Member List
@@ -95,7 +108,8 @@
+
diff --git a/classwinstd_1_1event__fn__auto__ret.html b/classwinstd_1_1event__fn__auto__ret.html index 5776bbdb..55f12330 100644 --- a/classwinstd_1_1event__fn__auto__ret.html +++ b/classwinstd_1_1event__fn__auto__ret.html @@ -3,13 +3,15 @@ - + WinStd: winstd::event_fn_auto_ret< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -92,15 +105,15 @@

Public Member Functions

event_fn_auto_ret (event_provider &ep, const EVENT_DESCRIPTOR *event_cons, const EVENT_DESCRIPTOR *event_dest, LPCSTR pszFnName, T &result) + event_fn_auto_ret (event_provider &ep, const EVENT_DESCRIPTOR *event_cons, const EVENT_DESCRIPTOR *event_dest, LPCSTR pszFnName, T &result)  Writes the event_cons event.
  event_fn_auto_ret (const event_fn_auto_ret< T > &other) + event_fn_auto_ret (const event_fn_auto_ret< T > &other)  Copies the object.
  event_fn_auto_ret (event_fn_auto_ret< T > &&other) + event_fn_auto_ret (event_fn_auto_ret< T > &&other)  Moves the object.
  @@ -108,11 +121,11 @@  Writes the event_dest event.
  -event_fn_auto_retoperator= (const event_fn_auto_ret< T > &other) +event_fn_auto_retoperator= (const event_fn_auto_ret< T > &other)  Copies the object.
  -event_fn_auto_retoperator= (event_fn_auto_ret< T > &&other) +event_fn_auto_retoperator= (event_fn_auto_ret< T > &&other)  Moves the object.
  @@ -123,7 +136,7 @@ +const EVENT_DESCRIPTOR *  +T & 
 Reference to event provider in use.
 
-const EVENT_DESCRIPTORm_event_dest
m_event_dest
 Event descriptor at destruction.
 
@@ -131,12 +144,12 @@
 Function name and return value.
 
-Tm_result
m_result
 Function result.
 

Detailed Description

-
template<class T>
+
template<class T>
class winstd::event_fn_auto_ret< T >

Helper template to write an event on entry/exit of scope with one parameter (typically result).

It writes one string event at creation and another at destruction, with allowing one sprintf type parameter for string event at destruction.


The documentation for this class was generated from the following file:
    @@ -145,7 +158,8 @@
+
diff --git a/classwinstd_1_1event__log-members.html b/classwinstd_1_1event__log-members.html index faf1e933..426e48d7 100644 --- a/classwinstd_1_1event__log-members.html +++ b/classwinstd_1_1event__log-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::event_log Member List
@@ -89,7 +102,7 @@ handle() noexceptwinstd::handle< HANDLE, NULL >inline handle(handle_type h) noexceptwinstd::handle< HANDLE, NULL >inline handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< HANDLE, NULL >inline - handle_type typedefwinstd::handle< HANDLE, NULL > + handle_type typedefwinstd::handle< HANDLE, NULL > invalidwinstd::handle< HANDLE, NULL >static m_hwinstd::handle< HANDLE, NULL >protected operator handle_type() constwinstd::handle< HANDLE, NULL >inline @@ -109,7 +122,8 @@
+
diff --git a/classwinstd_1_1event__log.html b/classwinstd_1_1event__log.html index b49d02c4..68a01cc5 100644 --- a/classwinstd_1_1event__log.html +++ b/classwinstd_1_1event__log.html @@ -3,13 +3,15 @@ - + WinStd: winstd::event_log Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -100,91 +113,92 @@ - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~event_log ()
virtual ~event_log ()
 Closes an event log handle.
 
- Public Member Functions inherited from winstd::handle< HANDLE, NULL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Closes an event log handle.
 
- Protected Member Functions inherited from winstd::handle< HANDLE, NULL >
- - - + + + +static const HANDLE  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< HANDLE, NULL >
-typedef HANDLE handle_type
 Datatype of the object handle this template class handles.
 
+typedef HANDLE handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< HANDLE, NULL >
-static const HANDLE invalid
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< HANDLE, NULL >
-handle_type m_h
m_h
 Object handle.
 
@@ -202,9 +216,9 @@

- + - +
virtual winstd::event_log::~event_log virtual winstd::event_log::~event_log ())
@@ -231,9 +245,9 @@

- + - +
void winstd::event_log::free_internal void winstd::event_log::free_internal ())
@@ -257,7 +271,8 @@

+

diff --git a/classwinstd_1_1event__provider-members.html b/classwinstd_1_1event__provider-members.html index 0915ba49..65048c47 100644 --- a/classwinstd_1_1event__provider-members.html +++ b/classwinstd_1_1event__provider-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::event_provider Member List
@@ -92,7 +105,7 @@ handle() noexceptwinstd::handle< REGHANDLE, NULL >inline handle(handle_type h) noexceptwinstd::handle< REGHANDLE, NULL >inline handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< REGHANDLE, NULL >inline - handle_type typedefwinstd::handle< REGHANDLE, NULL > + handle_type typedefwinstd::handle< REGHANDLE, NULL > invalidwinstd::handle< REGHANDLE, NULL >static m_hwinstd::handle< REGHANDLE, NULL >protected operator handle_type() constwinstd::handle< REGHANDLE, NULL >inline @@ -117,7 +130,8 @@
+ diff --git a/classwinstd_1_1event__provider.html b/classwinstd_1_1event__provider.html index d6b13170..265cd828 100644 --- a/classwinstd_1_1event__provider.html +++ b/classwinstd_1_1event__provider.html @@ -3,13 +3,15 @@ - + WinStd: winstd::event_provider Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -101,118 +114,119 @@ - + - + - + - + - + - + - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~event_provider ()
virtual ~event_provider ()
 Closes the event provider.
 
ULONG create (LPCGUID ProviderId)
ULONG create (LPCGUID ProviderId)
 Registers the event provider.
 
ULONG write (PCEVENT_DESCRIPTOR EventDescriptor)
ULONG write (PCEVENT_DESCRIPTOR EventDescriptor)
 Writes an event with no parameters.
 
ULONG write (PCEVENT_DESCRIPTOR EventDescriptor, ULONG UserDataCount=0, PEVENT_DATA_DESCRIPTOR UserData=NULL)
ULONG write (PCEVENT_DESCRIPTOR EventDescriptor, ULONG UserDataCount=0, PEVENT_DATA_DESCRIPTOR UserData=NULL)
 Writes an event with parameters stored in array.
 
ULONG write (PCEVENT_DESCRIPTOR EventDescriptor, const EVENT_DATA_DESCRIPTOR param1,...)
ULONG write (PCEVENT_DESCRIPTOR EventDescriptor, const EVENT_DATA_DESCRIPTOR param1,...)
 Writes an event with one or more parameter.
 
ULONG write (PCEVENT_DESCRIPTOR EventDescriptor, va_list arg)
ULONG write (PCEVENT_DESCRIPTOR EventDescriptor, va_list arg)
 Writes an event with variable number of parameters.
 
ULONG write (UCHAR Level, ULONGLONG Keyword, PCWSTR String,...)
ULONG write (UCHAR Level, ULONGLONG Keyword, PCWSTR String,...)
 Writes a string event.
 
- Public Member Functions inherited from winstd::handle< REGHANDLE, NULL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + - + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Releases the event provider.
 
virtual void enable_callback (LPCGUID SourceId, ULONG IsEnabled, UCHAR Level, ULONGLONG MatchAnyKeyword, ULONGLONG MatchAllKeyword, PEVENT_FILTER_DESCRIPTOR FilterData)
virtual void enable_callback (LPCGUID SourceId, ULONG IsEnabled, UCHAR Level, ULONGLONG MatchAnyKeyword, ULONGLONG MatchAllKeyword, PEVENT_FILTER_DESCRIPTOR FilterData)
 Receive enable or disable notification requests.
 
- Protected Member Functions inherited from winstd::handle< REGHANDLE, NULL >
- +

Static Protected Member Functions

static VOID NTAPI enable_callback (LPCGUID SourceId, ULONG IsEnabled, UCHAR Level, ULONGLONG MatchAnyKeyword, ULONGLONG MatchAllKeyword, PEVENT_FILTER_DESCRIPTOR FilterData, PVOID CallbackContext)
static VOID NTAPI enable_callback (LPCGUID SourceId, ULONG IsEnabled, UCHAR Level, ULONGLONG MatchAnyKeyword, ULONGLONG MatchAllKeyword, PEVENT_FILTER_DESCRIPTOR FilterData, PVOID CallbackContext)
 Receive enable or disable notification requests.
 
- - - + + + +static const REGHANDLE  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< REGHANDLE, NULL >
-typedef REGHANDLE handle_type
 Datatype of the object handle this template class handles.
 
+typedef REGHANDLE handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< REGHANDLE, NULL >
-static const REGHANDLE invalid
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< REGHANDLE, NULL >
-handle_type m_h
m_h
 Object handle.
 
@@ -229,9 +243,9 @@

- + - +
virtual winstd::event_provider::~event_provider virtual winstd::event_provider::~event_provider ())
@@ -258,9 +272,9 @@

- + - +
ULONG winstd::event_provider::create ULONG winstd::event_provider::create (LPCGUID ProviderId)LPCGUID ProviderId)
@@ -291,34 +305,34 @@

- + - + - + - + - + - + - +
virtual void winstd::event_provider::enable_callback virtual void winstd::event_provider::enable_callback (LPCGUID SourceId, LPCGUID SourceId,
ULONG IsEnabled, ULONG IsEnabled,
UCHAR Level, UCHAR Level,
ULONGLONG MatchAnyKeyword, ULONGLONG MatchAnyKeyword,
ULONGLONG MatchAllKeyword, ULONGLONG MatchAllKeyword,
PEVENT_FILTER_DESCRIPTOR FilterData )PEVENT_FILTER_DESCRIPTOR FilterData )
@@ -343,39 +357,39 @@

- + - + - + - + - + - + - + - +
static VOID NTAPI winstd::event_provider::enable_callback static VOID NTAPI winstd::event_provider::enable_callback (LPCGUID SourceId, LPCGUID SourceId,
ULONG IsEnabled, ULONG IsEnabled,
UCHAR Level, UCHAR Level,
ULONGLONG MatchAnyKeyword, ULONGLONG MatchAnyKeyword,
ULONGLONG MatchAllKeyword, ULONGLONG MatchAllKeyword,
PEVENT_FILTER_DESCRIPTOR FilterData, PEVENT_FILTER_DESCRIPTOR FilterData,
PVOID CallbackContext )PVOID CallbackContext )
@@ -400,9 +414,9 @@

- + - +
void winstd::event_provider::free_internal void winstd::event_provider::free_internal ())
@@ -430,9 +444,9 @@

- + - +
ULONG winstd::event_provider::write ULONG winstd::event_provider::write (PCEVENT_DESCRIPTOR EventDescriptor)PCEVENT_DESCRIPTOR EventDescriptor)
@@ -463,14 +477,14 @@

- + - + - + @@ -506,19 +520,19 @@

ULONG winstd::event_provider::write ULONG winstd::event_provider::write (PCEVENT_DESCRIPTOR EventDescriptor, PCEVENT_DESCRIPTOR EventDescriptor,
const EVENT_DATA_DESCRIPTOR param1, const EVENT_DATA_DESCRIPTOR param1,
- + - + - + - +
ULONG winstd::event_provider::write ULONG winstd::event_provider::write (PCEVENT_DESCRIPTOR EventDescriptor, PCEVENT_DESCRIPTOR EventDescriptor,
ULONG UserDataCount = 0, ULONG UserDataCount = 0,
PEVENT_DATA_DESCRIPTOR UserData = NULL )PEVENT_DATA_DESCRIPTOR UserData = NULL )
@@ -548,14 +562,14 @@

- + - + - +
ULONG winstd::event_provider::write ULONG winstd::event_provider::write (PCEVENT_DESCRIPTOR EventDescriptor, PCEVENT_DESCRIPTOR EventDescriptor,
va_list arg )va_list arg )
@@ -586,19 +600,19 @@

- + - + - + - + @@ -629,7 +643,8 @@

+ diff --git a/classwinstd_1_1event__rec-members.html b/classwinstd_1_1event__rec-members.html index 690f341e..b84c73c4 100644 --- a/classwinstd_1_1event__rec-members.html +++ b/classwinstd_1_1event__rec-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

ULONG winstd::event_provider::write ULONG winstd::event_provider::write (UCHAR Level, UCHAR Level,
ULONGLONG Keyword, ULONGLONG Keyword,
PCWSTR String, PCWSTR String,

- + + +
+
winstd::event_rec Member List
@@ -97,7 +110,8 @@
+
diff --git a/classwinstd_1_1event__rec.html b/classwinstd_1_1event__rec.html index db66fcb7..91cef50e 100644 --- a/classwinstd_1_1event__rec.html +++ b/classwinstd_1_1event__rec.html @@ -3,13 +3,15 @@ - + WinStd: winstd::event_rec Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -101,41 +114,41 @@  event_rec ()  Constructs a blank event record.
  - event_rec (const event_rec &other) + event_rec (const event_rec &other)  Copies an existing event record.
  - event_rec (const EVENT_RECORD &other) + event_rec (const EVENT_RECORD &other)  Copies an existing event record.
  - event_rec (event_rec &&other) noexceptevent_rec (event_rec &&other) noexcept  Moves the event record.
   ~event_rec ()  Destroys event record data and frees the allocated memory.
  -event_recoperator= (const event_rec &other) +event_recoperator= (const event_rec &other)  Copies an existing event record.
  -event_recoperator= (const EVENT_RECORD &other) +event_recoperator= (const EVENT_RECORD &other)  Copies an existing event record.
  -event_recoperator= (event_rec &&other) noexcept +event_recoperator= (event_rec &&other) noexcept  Moves the event record.
  -void set_extended_data (USHORT count, const EVENT_HEADER_EXTENDED_DATA_ITEM *data) +void set_extended_data (USHORT count, const EVENT_HEADER_EXTENDED_DATA_ITEM *data)  Sets event record extended data.
  -void set_user_data (USHORT size, LPCVOID data) +void set_user_data (USHORT size, LPCVOID data)  Sets event record user data.
  - + - +

Protected Member Functions

void set_extended_data_internal (USHORT count, const EVENT_HEADER_EXTENDED_DATA_ITEM *data)
void set_extended_data_internal (USHORT count, const EVENT_HEADER_EXTENDED_DATA_ITEM *data)
 Sets event record extended data.
 
void set_user_data_internal (USHORT size, LPCVOID data)
void set_user_data_internal (USHORT size, LPCVOID data)
 Sets event record user data.
 
@@ -154,7 +167,7 @@

winstd::event_rec::event_rec ( - const event_rec & other) + const event_rec & other) @@ -187,7 +200,7 @@

winstd::event_rec::event_rec ( - const EVENT_RECORD & other) + const EVENT_RECORD & other) @@ -254,7 +267,7 @@

event_rec & winstd::event_rec::operator= ( - const event_rec & other) + const event_rec & other) @@ -287,7 +300,7 @@

event_rec & winstd::event_rec::operator= ( - const EVENT_RECORD & other) + const EVENT_RECORD & other) @@ -351,14 +364,14 @@

- + - + - +
void winstd::event_rec::set_extended_data void winstd::event_rec::set_extended_data (USHORT count, USHORT count,
const EVENT_HEADER_EXTENDED_DATA_ITEM * data )const EVENT_HEADER_EXTENDED_DATA_ITEM * data )
@@ -389,14 +402,14 @@

- + - + - +
void winstd::event_rec::set_extended_data_internal void winstd::event_rec::set_extended_data_internal (USHORT count, USHORT count,
const EVENT_HEADER_EXTENDED_DATA_ITEM * data )const EVENT_HEADER_EXTENDED_DATA_ITEM * data )
@@ -427,14 +440,14 @@

- + - + - +
void winstd::event_rec::set_user_data void winstd::event_rec::set_user_data (USHORT size, USHORT size,
LPCVOID data )LPCVOID data )
@@ -465,14 +478,14 @@

- + - + - +
void winstd::event_rec::set_user_data_internal void winstd::event_rec::set_user_data_internal (USHORT size, USHORT size,
LPCVOID data )LPCVOID data )
@@ -499,7 +512,8 @@

+

diff --git a/classwinstd_1_1event__session-members.html b/classwinstd_1_1event__session-members.html index dd5b5d1b..76b5837d 100644 --- a/classwinstd_1_1event__session-members.html +++ b/classwinstd_1_1event__session-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::event_session Member List
@@ -83,7 +96,7 @@

This is the complete list of members for winstd::event_session, including all inherited members.

- + @@ -96,7 +109,7 @@ - + @@ -111,8 +124,8 @@ - - + + @@ -120,7 +133,8 @@
attach(handle_type h, EVENT_TRACE_PROPERTIES *prop)winstd::event_sessioninline
handle< TRACEHANDLE, 0 >::attach(handle_type h) noexceptwinstd::handle< TRACEHANDLE, 0 >inline
winstd::handle< TRACEHANDLE, 0 >::attach(handle_type h) noexceptwinstd::handle< TRACEHANDLE, 0 >inline
create(LPCTSTR SessionName, const EVENT_TRACE_PROPERTIES *Properties)winstd::event_sessioninline
detach()winstd::handle< TRACEHANDLE, 0 >inline
disable_trace(LPCGUID ProviderId, UCHAR Level, ULONGLONG MatchAnyKeyword=0, ULONGLONG MatchAllKeyword=0, ULONG EnableProperty=0, PEVENT_FILTER_DESCRIPTOR EnableFilterDesc=NULL)winstd::event_sessioninline
handle() noexceptwinstd::handle< TRACEHANDLE, 0 >inline
handle(handle_type h) noexceptwinstd::handle< TRACEHANDLE, 0 >inline
handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< TRACEHANDLE, 0 >inline
handle_type typedefwinstd::handle< TRACEHANDLE, 0 >
handle_type typedefwinstd::handle< TRACEHANDLE, 0 >
invalidwinstd::handle< TRACEHANDLE, 0 >static
m_hwinstd::handle< TRACEHANDLE, 0 >protected
m_propwinstd::event_sessionprotected
operator<(handle_type h) constwinstd::handle< TRACEHANDLE, 0 >inline
operator<=(handle_type h) constwinstd::handle< TRACEHANDLE, 0 >inline
operator=(event_session &&other) noexceptwinstd::event_sessioninline
handle< TRACEHANDLE, 0 >::operator=(handle_type h) noexceptwinstd::handle< TRACEHANDLE, 0 >inline
handle< TRACEHANDLE, 0 >::operator=(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< TRACEHANDLE, 0 >inline
winstd::handle< TRACEHANDLE, 0 >::operator=(handle_type h) noexceptwinstd::handle< TRACEHANDLE, 0 >inline
winstd::handle< TRACEHANDLE, 0 >::operator=(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< TRACEHANDLE, 0 >inline
operator==(handle_type h) constwinstd::handle< TRACEHANDLE, 0 >inline
operator>(handle_type h) constwinstd::handle< TRACEHANDLE, 0 >inline
operator>=(handle_type h) constwinstd::handle< TRACEHANDLE, 0 >inline
+ diff --git a/classwinstd_1_1event__session.html b/classwinstd_1_1event__session.html index 555bb2d7..5042cc9a 100644 --- a/classwinstd_1_1event__session.html +++ b/classwinstd_1_1event__session.html @@ -3,13 +3,15 @@ - + WinStd: winstd::event_session Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -105,125 +118,126 @@  event_session ()  Initializes a new empty session.
  - event_session (handle_type h, const EVENT_TRACE_PROPERTIES *prop) + event_session (handle_type h, const EVENT_TRACE_PROPERTIES *prop)  Initializes a new session with an already available object handle.
  - event_session (event_session &&other) noexceptevent_session (event_session &&other) noexcept  Move constructor.
  -virtual ~event_session () +virtual ~event_session ()  Closes the session.
  -event_sessionoperator= (event_session &&other) noexcept +event_sessionoperator= (event_session &&other) noexcept  Move assignment.
  - operator const EVENT_TRACE_PROPERTIES * () constoperator const EVENT_TRACE_PROPERTIES * () const  Auto-typecasting operator.
  -LPCTSTR name () const +LPCTSTR name () const  Gets session name.
  -void attach (handle_type h, EVENT_TRACE_PROPERTIES *prop) +void attach (handle_type h, EVENT_TRACE_PROPERTIES *prop)  Sets a new session handle for the class.
  -ULONG create (LPCTSTR SessionName, const EVENT_TRACE_PROPERTIES *Properties) +ULONG create (LPCTSTR SessionName, const EVENT_TRACE_PROPERTIES *Properties)  Registers and starts an event tracing session.
  -ULONG enable_trace (LPCGUID ProviderId, UCHAR Level, ULONGLONG MatchAnyKeyword=0, ULONGLONG MatchAllKeyword=0, ULONG EnableProperty=0, PEVENT_FILTER_DESCRIPTOR EnableFilterDesc=NULL) +ULONG enable_trace (LPCGUID ProviderId, UCHAR Level, ULONGLONG MatchAnyKeyword=0, ULONGLONG MatchAllKeyword=0, ULONG EnableProperty=0, PEVENT_FILTER_DESCRIPTOR EnableFilterDesc=NULL)  Enables the specified event trace provider.
  -ULONG disable_trace (LPCGUID ProviderId, UCHAR Level, ULONGLONG MatchAnyKeyword=0, ULONGLONG MatchAllKeyword=0, ULONG EnableProperty=0, PEVENT_FILTER_DESCRIPTOR EnableFilterDesc=NULL) +ULONG disable_trace (LPCGUID ProviderId, UCHAR Level, ULONGLONG MatchAnyKeyword=0, ULONGLONG MatchAllKeyword=0, ULONG EnableProperty=0, PEVENT_FILTER_DESCRIPTOR EnableFilterDesc=NULL)  Disables the specified event trace provider.
  - Public Member Functions inherited from winstd::handle< TRACEHANDLE, 0 >handle () noexcepthandle () noexcept  Initializes a new class instance with the object handle set to INVAL.
  - handle (handle_type h) noexcepthandle (handle_type h) noexcept  Initializes a new class instance with an already available object handle.
  - handle (handle< handle_type, INVAL > &&h) noexcepthandle (handle< handle_type, INVAL > &&h) noexcept  Move constructor.
  -handle< handle_type, INVAL > & operator= (handle_type h) noexcept +handle< handle_type, INVAL > & operator= (handle_type h) noexcept  Attaches already available object handle.
  -handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept +handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept  Move assignment.
  - operator handle_type () constoperator handle_type () const  Auto-typecasting operator.
  -handle_type *& operator* () const +handle_type *& operator* () const  Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
  -handle_typeoperator& () +handle_typeoperator& ()  Returns the object handle reference.
  -handle_type operator-> () const +handle_type operator-> () const  Provides object handle member access when the object handle is a pointer to a class or struct.
  -bool operator! () const +bool operator! () const  Tests if the object handle is invalid.
  -bool operator< (handle_type h) const +bool operator< (handle_type h) const  Is handle less than?
  -bool operator<= (handle_type h) const +bool operator<= (handle_type h) const  Is handle less than or equal to?
  -bool operator>= (handle_type h) const +bool operator>= (handle_type h) const  Is handle greater than or equal to?
  -bool operator> (handle_type h) const +bool operator> (handle_type h) const  Is handle greater than?
  -bool operator!= (handle_type h) const +bool operator!= (handle_type h) const  Is handle not equal to?
  -bool operator== (handle_type h) const +bool operator== (handle_type h) const  Is handle equal to?
  -void attach (handle_type h) noexcept +void attach (handle_type h) noexcept  Sets a new object handle for the class.
  -handle_type detach () +handle_type detach ()  Dismisses the object handle from this class.
  -void free () +void free ()  Destroys the object.
  - + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Releases the session.
 
- Protected Member Functions inherited from winstd::handle< TRACEHANDLE, 0 >
+std::unique_ptr< EVENT_TRACE_PROPERTIES >  +handle_type 

Protected Attributes

-std::unique_ptr< EVENT_TRACE_PROPERTIESm_prop
m_prop
 Session properties.
 
- Protected Attributes inherited from winstd::handle< TRACEHANDLE, 0 >
-handle_type m_h
m_h
 Object handle.
 
- - - + + + +static const TRACEHANDLE 

Additional Inherited Members

- Public Types inherited from winstd::handle< TRACEHANDLE, 0 >
-typedef TRACEHANDLE handle_type
 Datatype of the object handle this template class handles.
 
+typedef TRACEHANDLE handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< TRACEHANDLE, 0 >
-static const TRACEHANDLE invalid
invalid
 Invalid handle value.
 
@@ -242,12 +256,12 @@

winstd::event_session::event_session ( - handle_type h, + handle_type h, - const EVENT_TRACE_PROPERTIES * prop ) + const EVENT_TRACE_PROPERTIES * prop ) @@ -311,9 +325,9 @@

- + - +
virtual winstd::event_session::~event_session virtual winstd::event_session::~event_session ())
@@ -340,14 +354,14 @@

- + - + - +
void winstd::event_session::attach void winstd::event_session::attach (handle_type h, handle_type h,
EVENT_TRACE_PROPERTIES * prop )EVENT_TRACE_PROPERTIES * prop )
@@ -379,14 +393,14 @@

- + - + - +
ULONG winstd::event_session::create ULONG winstd::event_session::create (LPCTSTR SessionName, LPCTSTR SessionName,
const EVENT_TRACE_PROPERTIES * Properties )const EVENT_TRACE_PROPERTIES * Properties )
@@ -416,34 +430,34 @@

- + - + - + - + - + - + - +
ULONG winstd::event_session::disable_trace ULONG winstd::event_session::disable_trace (LPCGUID ProviderId, LPCGUID ProviderId,
UCHAR Level, UCHAR Level,
ULONGLONG MatchAnyKeyword = 0, ULONGLONG MatchAnyKeyword = 0,
ULONGLONG MatchAllKeyword = 0, ULONGLONG MatchAllKeyword = 0,
ULONG EnableProperty = 0, ULONG EnableProperty = 0,
PEVENT_FILTER_DESCRIPTOR EnableFilterDesc = NULL )PEVENT_FILTER_DESCRIPTOR EnableFilterDesc = NULL )
@@ -473,34 +487,34 @@

- + - + - + - + - + - + - +
ULONG winstd::event_session::enable_trace ULONG winstd::event_session::enable_trace (LPCGUID ProviderId, LPCGUID ProviderId,
UCHAR Level, UCHAR Level,
ULONGLONG MatchAnyKeyword = 0, ULONGLONG MatchAnyKeyword = 0,
ULONGLONG MatchAllKeyword = 0, ULONGLONG MatchAllKeyword = 0,
ULONG EnableProperty = 0, ULONG EnableProperty = 0,
PEVENT_FILTER_DESCRIPTOR EnableFilterDesc = NULL )PEVENT_FILTER_DESCRIPTOR EnableFilterDesc = NULL )
@@ -530,9 +544,9 @@

- + - +
void winstd::event_session::free_internal void winstd::event_session::free_internal ())
@@ -560,9 +574,9 @@

- + - +
LPCTSTR winstd::event_session::name LPCTSTR winstd::event_session::name ()) const
@@ -588,9 +602,9 @@

- + - +
winstd::event_session::operator const EVENT_TRACE_PROPERTIES * winstd::event_session::operator const EVENT_TRACE_PROPERTIES * ()) const
@@ -645,7 +659,8 @@

+

diff --git a/classwinstd_1_1event__trace-members.html b/classwinstd_1_1event__trace-members.html index 2a6c1c16..2a009f93 100644 --- a/classwinstd_1_1event__trace-members.html +++ b/classwinstd_1_1event__trace-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+ + diff --git a/classwinstd_1_1event__trace.html b/classwinstd_1_1event__trace.html index d4642fca..816a8fc7 100644 --- a/classwinstd_1_1event__trace.html +++ b/classwinstd_1_1event__trace.html @@ -3,13 +3,15 @@ - + WinStd: winstd::event_trace Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -100,91 +113,92 @@ - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~event_trace ()
virtual ~event_trace ()
 Closes the trace.
 
- Public Member Functions inherited from winstd::handle< TRACEHANDLE, INVALID_PROCESSTRACE_HANDLE >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Closes the trace.
 
- Protected Member Functions inherited from winstd::handle< TRACEHANDLE, INVALID_PROCESSTRACE_HANDLE >
- - - + + + +static const TRACEHANDLE  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< TRACEHANDLE, INVALID_PROCESSTRACE_HANDLE >
-typedef TRACEHANDLE handle_type
 Datatype of the object handle this template class handles.
 
+typedef TRACEHANDLE handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< TRACEHANDLE, INVALID_PROCESSTRACE_HANDLE >
-static const TRACEHANDLE invalid
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< TRACEHANDLE, INVALID_PROCESSTRACE_HANDLE >
-handle_type m_h
m_h
 Object handle.
 
@@ -202,9 +216,9 @@

- + - +
virtual winstd::event_trace::~event_trace virtual winstd::event_trace::~event_trace ())
@@ -231,9 +245,9 @@

- + - +
void winstd::event_trace::free_internal void winstd::event_trace::free_internal ())
@@ -257,7 +271,8 @@

+

diff --git a/classwinstd_1_1event__trace__enabler-members.html b/classwinstd_1_1event__trace__enabler-members.html index ee701d56..97c3f933 100644 --- a/classwinstd_1_1event__trace__enabler-members.html +++ b/classwinstd_1_1event__trace__enabler-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::event_trace_enabler Member List
@@ -98,7 +111,8 @@
+ diff --git a/classwinstd_1_1event__trace__enabler.html b/classwinstd_1_1event__trace__enabler.html index 188126b7..a28f59ac 100644 --- a/classwinstd_1_1event__trace__enabler.html +++ b/classwinstd_1_1event__trace__enabler.html @@ -3,13 +3,15 @@ - + WinStd: winstd::event_trace_enabler Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -91,55 +104,55 @@ - + - + - + - +

Public Member Functions

 event_trace_enabler (LPCGUID SourceId, TRACEHANDLE TraceHandle, LPCGUID ProviderId, UCHAR Level, ULONGLONG MatchAnyKeyword=0, ULONGLONG MatchAllKeyword=0, ULONG EnableProperty=0, PEVENT_FILTER_DESCRIPTOR EnableFilterDesc=NULL)
 event_trace_enabler (LPCGUID SourceId, TRACEHANDLE TraceHandle, LPCGUID ProviderId, UCHAR Level, ULONGLONG MatchAnyKeyword=0, ULONGLONG MatchAllKeyword=0, ULONG EnableProperty=0, PEVENT_FILTER_DESCRIPTOR EnableFilterDesc=NULL)
 Enables event trace.
 
 event_trace_enabler (const event_session &session, LPCGUID ProviderId, UCHAR Level, ULONGLONG MatchAnyKeyword=0, ULONGLONG MatchAllKeyword=0, ULONG EnableProperty=0, PEVENT_FILTER_DESCRIPTOR EnableFilterDesc=NULL)
 event_trace_enabler (const event_session &session, LPCGUID ProviderId, UCHAR Level, ULONGLONG MatchAnyKeyword=0, ULONGLONG MatchAllKeyword=0, ULONG EnableProperty=0, PEVENT_FILTER_DESCRIPTOR EnableFilterDesc=NULL)
 Enables event trace.
 
ULONG status () const
ULONG status () const
 Return result of EnableTraceEx() call.
 
virtual ~event_trace_enabler ()
virtual ~event_trace_enabler ()
 Disables event trace.
 
+ULONG  +LPCGUID  +LPCGUID  +TRACEHANDLE  +UCHAR  +ULONGLONG  +ULONGLONG  +ULONG  +PEVENT_FILTER_DESCRIPTOR 

Protected Attributes

-ULONG m_status
m_status
 Result of EnableTraceEx call.
 
-LPCGUID m_provider_id
m_provider_id
 Provider ID.
 
-LPCGUID m_source_id
m_source_id
 Session ID.
 
-TRACEHANDLE m_trace_handle
m_trace_handle
 Trace handle.
 
-UCHAR m_level
m_level
 Logging level.
 
-ULONGLONG m_match_any_keyword
m_match_any_keyword
 Keyword match mask (any)
 
-ULONGLONG m_match_all_keyword
m_match_all_keyword
 Keyword match mask (all)
 
-ULONG m_enable_property
m_enable_property
 Enable property.
 
-PEVENT_FILTER_DESCRIPTOR m_enable_filter_desc
m_enable_filter_desc
 Event filter descriptor.
 
@@ -158,42 +171,42 @@

winstd::event_trace_enabler::event_trace_enabler ( - LPCGUID SourceId, + LPCGUID SourceId, - TRACEHANDLE TraceHandle, + TRACEHANDLE TraceHandle, - LPCGUID ProviderId, + LPCGUID ProviderId, - UCHAR Level, + UCHAR Level, - ULONGLONG MatchAnyKeyword = 0, + ULONGLONG MatchAnyKeyword = 0, - ULONGLONG MatchAllKeyword = 0, + ULONGLONG MatchAllKeyword = 0, - ULONG EnableProperty = 0, + ULONG EnableProperty = 0, - PEVENT_FILTER_DESCRIPTOR EnableFilterDesc = NULL ) + PEVENT_FILTER_DESCRIPTOR EnableFilterDesc = NULL ) @@ -220,37 +233,37 @@

winstd::event_trace_enabler::event_trace_enabler ( - const event_session & session, + const event_session & session, - LPCGUID ProviderId, + LPCGUID ProviderId, - UCHAR Level, + UCHAR Level, - ULONGLONG MatchAnyKeyword = 0, + ULONGLONG MatchAnyKeyword = 0, - ULONGLONG MatchAllKeyword = 0, + ULONGLONG MatchAllKeyword = 0, - ULONG EnableProperty = 0, + ULONG EnableProperty = 0, - PEVENT_FILTER_DESCRIPTOR EnableFilterDesc = NULL ) + PEVENT_FILTER_DESCRIPTOR EnableFilterDesc = NULL ) @@ -275,9 +288,9 @@

- + - +
virtual winstd::event_trace_enabler::~event_trace_enabler virtual winstd::event_trace_enabler::~event_trace_enabler ())
@@ -304,9 +317,9 @@

- + - +
ULONG winstd::event_trace_enabler::status ULONG winstd::event_trace_enabler::status ()) const
@@ -328,7 +341,8 @@

+

diff --git a/classwinstd_1_1find__file-members.html b/classwinstd_1_1find__file-members.html index 4105031d..fc9ccb2e 100644 --- a/classwinstd_1_1find__file-members.html +++ b/classwinstd_1_1find__file-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+ + diff --git a/classwinstd_1_1find__file.html b/classwinstd_1_1find__file.html index 8d5a5069..d054e7d1 100644 --- a/classwinstd_1_1find__file.html +++ b/classwinstd_1_1find__file.html @@ -3,13 +3,15 @@ - + WinStd: winstd::find_file Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -100,91 +113,92 @@ - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~find_file ()
virtual ~find_file ()
 Closes a file search handle.
 
- Public Member Functions inherited from winstd::handle< HANDLE, INVALID_HANDLE_VALUE >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Closes a file search handle.
 
- Protected Member Functions inherited from winstd::handle< HANDLE, INVALID_HANDLE_VALUE >
- - - + + + +static const HANDLE  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< HANDLE, INVALID_HANDLE_VALUE >
-typedef HANDLE handle_type
 Datatype of the object handle this template class handles.
 
+typedef HANDLE handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< HANDLE, INVALID_HANDLE_VALUE >
-static const HANDLE invalid
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< HANDLE, INVALID_HANDLE_VALUE >
-handle_type m_h
m_h
 Object handle.
 
@@ -202,9 +216,9 @@

- + - +
virtual winstd::find_file::~find_file virtual winstd::find_file::~find_file ())
@@ -231,9 +245,9 @@

- + - +
void winstd::find_file::free_internal void winstd::find_file::free_internal ())
@@ -257,7 +271,8 @@

+

diff --git a/classwinstd_1_1gdi__handle-members.html b/classwinstd_1_1gdi__handle-members.html index e2cca096..d03e8fb4 100644 --- a/classwinstd_1_1gdi__handle-members.html +++ b/classwinstd_1_1gdi__handle-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::gdi_handle< T > Member List
@@ -89,7 +102,7 @@ handle() noexceptwinstd::handle< T, NULL >inline handle(handle_type h) noexceptwinstd::handle< T, NULL >inline handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< T, NULL >inline - handle_type typedefwinstd::handle< T, NULL > + handle_type typedefwinstd::handle< T, NULL > invalidwinstd::handle< T, NULL >static m_hwinstd::handle< T, NULL >protected operator handle_type() constwinstd::handle< T, NULL >inline @@ -109,7 +122,8 @@
+ diff --git a/classwinstd_1_1gdi__handle.html b/classwinstd_1_1gdi__handle.html index 9433d394..d3248397 100644 --- a/classwinstd_1_1gdi__handle.html +++ b/classwinstd_1_1gdi__handle.html @@ -3,13 +3,15 @@ - + WinStd: winstd::gdi_handle< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -100,96 +113,97 @@ - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~gdi_handle ()
virtual ~gdi_handle ()
 Closes an open object handle.
 
- Public Member Functions inherited from winstd::handle< T, NULL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Closes an open object handle.
 
- Protected Member Functions inherited from winstd::handle< T, NULL >
- - - + + + +static const T  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< T, NULL >
-typedef T handle_type
 Datatype of the object handle this template class handles.
 
+typedef T handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< T, NULL >
-static const T invalid
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< T, NULL >
-handle_type m_h
m_h
 Object handle.
 

Detailed Description

-
template<class T>
+
template<class T>
class winstd::gdi_handle< T >

Windows HGDIOBJ wrapper class.

Constructor & Destructor Documentation

@@ -198,15 +212,15 @@

+template<class T >
- + - +
virtual winstd::gdi_handle< T >::~gdi_handle virtual winstd::gdi_handle< T >::~gdi_handle ())
@@ -229,15 +243,15 @@

+template<class T >
- + - +
void winstd::gdi_handle< T >::free_internal void winstd::gdi_handle< T >::free_internal ())
@@ -261,7 +275,8 @@

+ diff --git a/classwinstd_1_1globalmem__accessor-members.html b/classwinstd_1_1globalmem__accessor-members.html index cf6e5fbf..6be95648 100644 --- a/classwinstd_1_1globalmem__accessor-members.html +++ b/classwinstd_1_1globalmem__accessor-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + + +
winstd::globalmem_accessor< T > Member List
@@ -90,7 +103,8 @@

+
diff --git a/classwinstd_1_1globalmem__accessor.html b/classwinstd_1_1globalmem__accessor.html index 486dae49..8913a9da 100644 --- a/classwinstd_1_1globalmem__accessor.html +++ b/classwinstd_1_1globalmem__accessor.html @@ -3,13 +3,15 @@ - + WinStd: winstd::globalmem_accessor< T > Class Template Reference + + @@ -32,23 +34,33 @@
- + + +
+
Public Member Functions | @@ -91,30 +104,30 @@ - + - + +T * 

Public Member Functions

 globalmem_accessor (HGLOBAL hMem)
 globalmem_accessor (HGLOBAL hMem)
 Locks a global memory object and returns a pointer to the first byte of the object's memory block.
 
virtual ~globalmem_accessor ()
virtual ~globalmem_accessor ()
 Decrements the lock count associated with a memory object.
 
-Tdata () const noexcept
data () const noexcept
 Return data pointer.
 
+HGLOBAL  +T * 

Protected Attributes

-HGLOBAL m_h
m_h
 memory handle
 
-Tm_data
m_data
 memory pointer
 

Detailed Description

-
template<class T>
+
template<class T>
class winstd::globalmem_accessor< T >

Context scope automatic GlobalAlloc (un)access.

Constructor & Destructor Documentation

@@ -123,15 +136,15 @@

+template<class T >
- + @@ -108,7 +121,8 @@
- + - +
winstd::globalmem_accessor< T >::globalmem_accessor winstd::globalmem_accessor< T >::globalmem_accessor (HGLOBAL hMem)HGLOBAL hMem)
@@ -153,15 +166,15 @@

+template<class T >
- + - +
virtual winstd::globalmem_accessor< T >::~globalmem_accessor virtual winstd::globalmem_accessor< T >::~globalmem_accessor ())
@@ -183,7 +196,8 @@

+ diff --git a/classwinstd_1_1handle-members.html b/classwinstd_1_1handle-members.html index fa16adf0..4b4f866c 100644 --- a/classwinstd_1_1handle-members.html +++ b/classwinstd_1_1handle-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + + +
winstd::handle< T, INVAL > Member List
@@ -89,7 +102,7 @@

handle() noexceptwinstd::handle< T, INVAL >inline
handle(handle_type h) noexceptwinstd::handle< T, INVAL >inline
handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< T, INVAL >inline
handle_type typedefwinstd::handle< T, INVAL >
handle_type typedefwinstd::handle< T, INVAL >
invalidwinstd::handle< T, INVAL >static
m_hwinstd::handle< T, INVAL >protected
operator handle_type() constwinstd::handle< T, INVAL >inline

+
diff --git a/classwinstd_1_1handle.html b/classwinstd_1_1handle.html index 8b8cb2ff..516486ed 100644 --- a/classwinstd_1_1handle.html +++ b/classwinstd_1_1handle.html @@ -3,13 +3,15 @@ - + WinStd: winstd::handle< T, INVAL > Class Template Reference + + @@ -32,23 +34,33 @@
- + + +
+
Public Types | @@ -97,109 +110,103 @@
-winstd::dplhandle< BSTR, NULL > -winstd::dplhandle< PCCERT_CHAIN_CONTEXT, NULL > -winstd::dplhandle< PCCERT_CONTEXT, NULL > -winstd::dplhandle< T *, NULL > -winstd::dplhandle< HCRYPTHASH, NULL > -winstd::dplhandle< HCRYPTKEY, NULL > -winstd::dplhandle< EapPacket *, NULL > -winstd::dplhandle< SAFEARRAY *, NULL > -winstd::dplhandle< T, INVAL > +winstd::dplhandle< T *, NULL > +winstd::dplhandle< T, INVAL > +winstd::com_obj< T >
- - - + + +

Public Types

-typedef T handle_type
 Datatype of the object handle this template class handles.
 
+typedef T handle_type
 Datatype of the object handle this template class handles.
 
+  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
+static const T 

Static Public Attributes

-static const T invalid = INVAL
invalid = INVAL
 Invalid handle value.
 
- +

Protected Member Functions

virtual void free_internal () noexcept=0
virtual void free_internal () noexcept=0
 Abstract member function that must be implemented by child classes to do the actual object destruction.
 
+handle_type 

Protected Attributes

-handle_type m_h
m_h
 Object handle.
 

Detailed Description

-
template<class T, const T INVAL>
+
template<class T, const T INVAL>
class winstd::handle< T, INVAL >

Base abstract template class to support generic object handle keeping.

It provides basic operators and methods common to all descendands of this class establishing a base to ease the replacement of native object handle type with classes in object-oriented approach.

Constructor & Destructor Documentation

@@ -209,15 +216,15 @@

+template<class T , const T INVAL>
- + - +
winstd::handle< T, INVAL >::handle winstd::handle< T, INVAL >::handle (handle_type h)handle_type h)
@@ -244,15 +251,15 @@

+template<class T , const T INVAL>
- +
- + - +
winstd::handle< T, INVAL >::handle winstd::handle< T, INVAL >::handle (handle< handle_type, INVAL > && h)handle< handle_type, INVAL > && h)
@@ -280,15 +287,15 @@

+template<class T , const T INVAL>
- +
- + - +
void winstd::handle< T, INVAL >::attach void winstd::handle< T, INVAL >::attach (handle_type h)handle_type h)
@@ -316,15 +323,15 @@

+template<class T , const T INVAL>
- + - +
handle_type winstd::handle< T, INVAL >::detach handle_type winstd::handle< T, INVAL >::detach ())
@@ -346,15 +353,15 @@

+template<class T , const T INVAL>
- + - +
virtual void winstd::handle< T, INVAL >::free_internal virtual void winstd::handle< T, INVAL >::free_internal ())
@@ -367,7 +374,7 @@

winstd::com_obj< T >, winstd::bstr, winstd::safearray, winstd::cert_context, winstd::cert_chain_context, winstd::cert_store, winstd::crypt_prov, winstd::crypt_hash, winstd::crypt_key, winstd::eap_packet, winstd::event_provider, winstd::event_session, winstd::event_trace, winstd::gdi_handle< T >, winstd::icon, winstd::dc, winstd::window_dc, winstd::sec_credentials, winstd::sec_context, winstd::setup_device_info_list, winstd::win_handle< INVALID >, winstd::library, winstd::find_file, winstd::heap, winstd::vmemory, winstd::reg_key, winstd::security_id, winstd::event_log, winstd::sc_handle, winstd::http, winstd::addrinfo, winstd::waddrinfo, and winstd::wlan_handle.

+

Implemented in winstd::addrinfo, winstd::bstr, winstd::cert_chain_context, winstd::cert_context, winstd::cert_store, winstd::com_obj< T >, winstd::crypt_hash, winstd::crypt_key, winstd::crypt_prov, winstd::dc, winstd::eap_packet, winstd::event_log, winstd::event_provider, winstd::event_session, winstd::event_trace, winstd::find_file, winstd::gdi_handle< T >, winstd::heap, winstd::http, winstd::icon, winstd::library, winstd::reg_key, winstd::safearray, winstd::sc_handle, winstd::sec_context, winstd::sec_credentials, winstd::security_id, winstd::setup_device_info_list, winstd::vmemory, winstd::waddrinfo, winstd::win_handle< INVALID >, winstd::window_dc, and winstd::wlan_handle.

@@ -377,15 +384,15 @@

+template<class T , const T INVAL>
- + - +
winstd::handle< T, INVAL >::operator handle_type winstd::handle< T, INVAL >::operator handle_type ()) const
@@ -407,15 +414,15 @@

+template<class T , const T INVAL>
+  - + + 
- + - +
bool winstd::handle< T, INVAL >::operator! bool winstd::handle< T, INVAL >::operator! ()) const
@@ -442,15 +449,15 @@

+template<class T , const T INVAL>
- + - +
bool winstd::handle< T, INVAL >::operator!= bool winstd::handle< T, INVAL >::operator!= (handle_type h)handle_type h) const
@@ -482,15 +489,15 @@

+template<class T , const T INVAL>
- + - +
handle_type * winstd::handle< T, INVAL >::operator& handle_type * winstd::handle< T, INVAL >::operator& ())
@@ -512,15 +519,15 @@

+template<class T , const T INVAL>
- + - +
handle_type *& winstd::handle< T, INVAL >::operator* handle_type *& winstd::handle< T, INVAL >::operator* ()) const
@@ -542,15 +549,15 @@

+template<class T , const T INVAL>
- + - +
handle_type winstd::handle< T, INVAL >::operator-> handle_type winstd::handle< T, INVAL >::operator-> ()) const
@@ -572,15 +579,15 @@

+template<class T , const T INVAL>
- + @@ -109,7 +122,8 @@
- + - +
bool winstd::handle< T, INVAL >::operator< bool winstd::handle< T, INVAL >::operator< (handle_type h)handle_type h) const
@@ -612,15 +619,15 @@

+template<class T , const T INVAL>
- + - +
bool winstd::handle< T, INVAL >::operator<= bool winstd::handle< T, INVAL >::operator<= (handle_type h)handle_type h) const
@@ -652,15 +659,15 @@

+template<class T , const T INVAL>
- + - +
handle< handle_type, INVAL > & winstd::handle< T, INVAL >::operator= handle< handle_type, INVAL > & winstd::handle< T, INVAL >::operator= (handle< handle_type, INVAL > && h)handle< handle_type, INVAL > && h)
@@ -687,15 +694,15 @@

+template<class T , const T INVAL>
- + - +
handle< handle_type, INVAL > & winstd::handle< T, INVAL >::operator= handle< handle_type, INVAL > & winstd::handle< T, INVAL >::operator= (handle_type h)handle_type h)
@@ -722,15 +729,15 @@

+template<class T , const T INVAL>
- + - +
bool winstd::handle< T, INVAL >::operator== bool winstd::handle< T, INVAL >::operator== (handle_type h)handle_type h) const
@@ -762,15 +769,15 @@

+template<class T , const T INVAL>
- + @@ -110,7 +123,8 @@
- + - +
bool winstd::handle< T, INVAL >::operator> bool winstd::handle< T, INVAL >::operator> (handle_type h)handle_type h) const
@@ -802,15 +809,15 @@

+template<class T , const T INVAL>
- + - +
bool winstd::handle< T, INVAL >::operator>= bool winstd::handle< T, INVAL >::operator>= (handle_type h)handle_type h) const
@@ -842,7 +849,8 @@

+ diff --git a/classwinstd_1_1handle.png b/classwinstd_1_1handle.png index ad1bc32ed9738953be46f5ee5f899218c127c61a..16e417270c04625e705829f7a1434c0fa05ade61 100644 GIT binary patch literal 1514 zcmeAS@N?(olHy`uVBq!ia0y~yVC(?0J2;qugsFz zBLoA3F7G&@UAemD!j+O;+opL-$$tH|S!vM{4dczceY%IvyxF|x?LtK$oqF&48G*#K zXAL+B$m*!O9_S=!}iK(XM)PH8)s)XaZd3+h2j$6Krhju2oHXmx!<|07w--*|yfSD~*bJALs2(2KDf`;uj;~w&@mlVzYfGD7-ZPr= ztTmEv-`4=Y|0+rQcg9#}x_x99^nB$#>Di^QnE$1`vwyulU8k=kClFX#67MqU*Q6yo z_Y~^gR*KT@j=Zu`)3Y@4$u6~}=DDj@zuo)x>9d{D|CfeLecQ34Y}>3^K!^Xg5Z4TS zx~*f|>}aJ`4YesB9xvOv$L318;$GQBp?*7O&hl#S@A{EnymQ<7?QKPmpXo#is(Nk_ z{PE+#cD~EK=JysocfHfy@%Py#two*3tpx+!{Xajk^gQSPO8D)s74qj+cYn{Wl8wKu zTsHS~>67b6?+b0*=)Q($U(08UzATleOZdMjX1%Un|91N6eX+*x}N7hC)K}JQhCXF&v5$wZx3CMtiD?*`0=^k9hVlB zy$!QFCM?v?<4y(!1~Rcswyj!3(B1RdTiR_A{twbkw1{^#=(kLv9|tX-29cj!}4 zfBU6Xa*gp-F2C^j6y=zxx z<-J(FzFjSD){TivcDHnF3aJ;qxVCJ6wf7}ipd~+Y#rN6wcQ8~;ZFdRTeI#k3_oe$0 zuR;Ykx-*pQ(OR@**(TNS^*=VWJzgkYxOUz;uT`fOul|1;7*}`qYaelF{r5}E*! C9;v?o literal 6766 zcmeI1dsI_bzQ=VGABa#ZN-Odzt(H-s6%>_6iU8Ggd_^3@r8tO zG#5gk)ChQZszBtG_^73AfM5_%UJ;oPVhm9d0!c_R`+(YxoqK22teJcNxO3KGak9_Z zC;ROE`F(%i-_F_nzTPYK*Xb`^O!x0SojYb$y8_F~OW|K>w*~LkAg|OCC)?QSRxkva{qTUE-L|_+onTS<)g= z&W%GtrDB}T)#710=y z7rfy|gcV)bvt(xK*05)j!Q)xX$OO_6S@I=mwWwvVcwxg=Q~|L_Pk4Y+?|d_eob$aJ zDGb+vX;ZHSlf{-znSn{t<|v+I8Sj+eLz30w?)qjpK|VaQ-oO8QGy5qL^iC+wG~Q{< zXd8WX+YfZ!x!#bB1xx0nTcp+9TDV&SxamIJ>0f-)0LO}68nvg}ai8;I z`!2Cn6|@J1@-uEXTh{QB5aVH#)e79`t*`0_Zs-;do4{ z*s`dJy6)RCZIxbJqr($)RBUOREw3kkB~K8hXHy+aDcaXt(mPP{ys66Xh+^9!w9tNa zSj8(vJ2P*1R__o>Qwzo@sUNg}`Xzh561@0Xsp1_8;Wx7ekK>AisaKWB`RDrn9AGg% zvbV{i8)k8L|K{;fcie^)yb??NBx-AT^~Q&`y!2>YMkD{ch+|2>gX5aQ1E*yMmas3% zA9D1<94MOnXdB95_lg3mow|2X!3B*lKJH+lHLb>$e{7L z$kz*i?6|M{Po+@>Da$b5Qa$vS6T!0mFEI6wBaGj{0OUm#ltz)C>fu}&DAaW@^tmWP zq2^WWzoRgiL58B4%Cuw^?j?)aI>PNUv_Mc>Q-oN-C~GX-{KmT8jB^~R;^bCU(=CI* zB7Aythq8l&{V+jeqxTCVouhy zXBlggBN-efR@I3p{gYr*L1bNTxO2o-9Pv(~be3LSTI$@}aM;{>$Y9{3*zzI#IPOQ2 zJUeuzu{Lm;Vh%O@6}H_x7Lr!v-gH>EoHrK#8CX$3NqIE0=es7=B<*}~HVxlLrAa3V zaUrE6Rb@)vmS?MY;e+c$`dR|R_O^H+R_D?mSt)JwOW$DtL^F)hk*Qt7aHyei%48Lv z=$3pxlrMK+^tq!eso75tGB}i)P6p@Mq%skqo5m~=4S-`)vimPsKNzwt7E;v%eo6<% zwC+>ZIY$Q@d5l+6;CAtTah1l6yJE7Kg7MzW*AWV-3#-PPkxus~EJHdTJNdrxvf0f+FleeoL&&^P3NLfx3=CIN=yi>7Yfu1d7N4@(kY`C z^lhIlV4mQ|YlL+fHw70tU!tmjycya8fnhzQ*OWugNjxK6Dy+W?8N%h#3h7MiLlnwM zBOe2|g>QI`gyy{{6bgbOXs>y}JL=iUVU4BY*->gw|#Xg;e4pd>&7;AoGA6OY{U??gmG z>g?322^k;m-S?R8Sb;^b( za3&PvJ6Cs2W_LOSiEoHkXLVtXeMiq!tC-W_q;q51 zb-xVYXGDGYN)JYVQNvTI7Gc3{@w^B|UxUh#NhWAa=@_=wyU?Hnr!6 z(tW6cXEK2{snkA8E&<17)oPxM-J!2ZX5?b*CV~*5?y3g@?LwZqoecv&o8{(>qrc~L z?~1aPo=A1;OSjg#b#hJx$U_*+QR-GL9!bqrEE5%<0U(J6kV1j>Mb#=Ni^7`fE9!Lr z6R$Z>dY+gttW1m28|pkMepPipKU8)~v0RLx2wJZ=+u5T~p|FILz6e51<*>Bb0Vs`H zp=p5;4`B#Judb&KDo4Q=jHhye2&&hBmn7tYoBB%u@o)w<-{-FH3a`Bx&Iz6ZkezWX zqpRQnaATSChp>%u+;N_kO!;>&)VqeF4@-AFCltRlzm(?tl;s;E%X_AxLM%_2UtAbv!wK?lcR8KdI zv3&{IfKDhS#LJaiX}qbY%gs$G5!>ZZV4MTKF9B5lJE zEeg=wG>;`Av{(9(E1h4Ci+Qn=PGSv8Ir4A{s}&sncx$@J@YFnvS4=HB8K|C^P>+Iq zW6ZaNJj}-Lb85rgV#)@uag&G7uzyyq7bS|V8Ti$(sYrdtR2UwaGZj6GnfCA{y4&&T zI|yInx!0los{k3v1>gZpB`ZrU?m!R%#!0t^M>+u%&|6oN53cdyHqv=;M(Tbu(N}@B z@P>89LkgP*coDeM$6(b2jZ@f-Fl~UZH)fGzmA#k^9OA#lm;MuY&3Wb4^*q2A@I7@N zFMro+4r1dF82all`J1}=mbGFl*F&i0j<$;KzO3n1$x0F{#SO0_r0McQeQT(u+>O5W zQs)jcs!?6zs6r%kx~)T$Ln>eJ?Ec6Nl5<$W_!icVhuWYNbeYt$Ro7*iJ)$z?dA6Uu zqpnFWaNc*gjQ+!0^YCIcLu<$5WS?(tKv)w#yM%E&Ou5&kSuZMyZZ?Ce2UOpO$2*)% z)^2&=dRC6RAy9@eoJdY6R5846@wU@sD5W_Nk1h%bE2t0y-(YGYO%k{Hsk>we4hObv z>~{{3ZsT@SOPIP#Z4M%*d{|oo=M4ioRSXP6uvcmX@A5S-dBlcTp9Yc-&2xmy(J=pu zWx!*C1O1$a{4v(WBDKk)8gBP8^w6Jrr$-?Mr zwpk*P9tuIMP!K^ZGK{TeMqCX&_wVzA!Q^MxNtePAXixL0fSTafuLe1u==Ub~mPHlt z0JesASIBYT{ru+z?Kef&Z_IQC$ zL932`9a3RnXcJ&)KY<=F3y%{+R`ES?x&!X|VTxD=TCYr+s{NUp)E8Bj@Z@4(PLW0J zp!1hIirMGoi6dUmY+t80=u`c9`U%RIPlB!E+_r~?*iH)@W41oeU_k{{2{XhS4^%e1ZhWWHpk>TcZmtU(6A$9w2TY}E zA<&t4`JhQCsEjoTZ$L6}C6E2`bJ&*QBfv!#yoZ7SC!r7jqqcLIJrdMM(9qauk4Su1 zJ*@Z!5$aq>gre(*T$MkmhYLf8r7D&YA_&!E0t`Y|5o}L^Rka1_?8yX6IwG%`GGnk8 zh}!znC**6md{vuPiT=fv{*dU5z+6N#k5D?DHk;H4tNnsZ=|)+`n9|6+ck43QQ1q@r z!x#&!a`ka9x4E=G=64Nxz5+HBOXu@GU;guxeonxM>sRP7$&uMtNlBckKZsxKyxTC| z`z)Y%c4V*0p%f0PrBS!OCFzNtJeCN$m1`&|jePCC%1%sPbtei{)l|K(*nS#uOtl5c zA08gYT(_{I_jSFt19q22C5~x$j-)a@WJ3C_+8o|%*o*k$9dpVGf1EgYoTans47z1 zm;7f3Vs0M{;r`dk%Q`7}sqJ6q zqu62Hh#}KX+}NeAO`|w|hHBFLJ;uxT31*_GrXYhB-A+=o@Fz)K_e|8AeX)ciV|SW= zAf1swoY&wYvmuNdovn9c zOPa%_xEq)aU7q5y6Vu82W-=OehTT+ml>!`l2rEP_5!LAN8f$_)abcR?jneLmfvs_Q z^{FrBT!V~tx{h8O@T*db7+&kd6KE`~H0B^<+qsglm%Cln9?nb5CrTFhyyUV6`(13 zH!!fY0&qX<_Wqx56g)C|XWw?T{=QP!c_$@O)(k-h;e3X75NVO|PYDJt^gwIZ&7gcW zgH?DKiTJqC**(9bP+quvtKGoo6%S>LuHYjRD|}>Dyq$-t^!+OvEJJ{gj%9lEBnKDY zei6H*x|2J`K8>|iOfL0D)yKmkNtoj>S`cy|$}VnA+(bwyM%k2w-Kto{v)c>rzdOxi z$Fdiv<`s3u#|(MkLWZelr{#BO0%Gdh(*F6WU$Va7hxuOx(p|u>0zu8zvFN_ba53dM z?@oLALKvJ=9nv)unzL{rA8+}_n$}i6=tx9xGbQCRB@`4}b>Hh5fg!sYit4!r$dTm2 zj#P5DbWGEdNB0YG diff --git a/classwinstd_1_1heap-members.html b/classwinstd_1_1heap-members.html index 4bdc5fd7..e49567bc 100644 --- a/classwinstd_1_1heap-members.html +++ b/classwinstd_1_1heap-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + + +
winstd::heap Member List
@@ -90,7 +103,7 @@

handle() noexceptwinstd::handle< HANDLE, NULL >inline
handle(handle_type h) noexceptwinstd::handle< HANDLE, NULL >inline
handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< HANDLE, NULL >inline
handle_type typedefwinstd::handle< HANDLE, NULL >
handle_type typedefwinstd::handle< HANDLE, NULL >
invalidwinstd::handle< HANDLE, NULL >static
m_hwinstd::handle< HANDLE, NULL >protected
operator handle_type() constwinstd::handle< HANDLE, NULL >inline
+ diff --git a/classwinstd_1_1heap.html b/classwinstd_1_1heap.html index 72c4b8d2..0d45fd45 100644 --- a/classwinstd_1_1heap.html +++ b/classwinstd_1_1heap.html @@ -3,13 +3,15 @@ - + WinStd: winstd::heap Class Reference + + @@ -32,23 +34,33 @@

- + + + +
Public Member Functions | @@ -100,94 +113,95 @@ - + - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~heap ()
virtual ~heap ()
 Destroys the heap.
 
bool enumerate () noexcept
bool enumerate () noexcept
 Enumerates allocated heap blocks using OutputDebugString()
 
- Public Member Functions inherited from winstd::handle< HANDLE, NULL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Destroys the heap.
 
- Protected Member Functions inherited from winstd::handle< HANDLE, NULL >
- - - + + + +static const HANDLE  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< HANDLE, NULL >
-typedef HANDLE handle_type
 Datatype of the object handle this template class handles.
 
+typedef HANDLE handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< HANDLE, NULL >
-static const HANDLE invalid
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< HANDLE, NULL >
-handle_type m_h
m_h
 Object handle.
 
@@ -205,9 +219,9 @@

- + - +
virtual winstd::heap::~heap virtual winstd::heap::~heap ())
@@ -234,9 +248,9 @@

- + - +
bool winstd::heap::enumerate bool winstd::heap::enumerate ())
@@ -266,9 +280,9 @@

- + - +
void winstd::heap::free_internal void winstd::heap::free_internal ())
@@ -292,7 +306,8 @@

+

diff --git a/classwinstd_1_1heap__allocator-members.html b/classwinstd_1_1heap__allocator-members.html index 97476ac5..091df3c1 100644 --- a/classwinstd_1_1heap__allocator-members.html +++ b/classwinstd_1_1heap__allocator-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + + + + diff --git a/classwinstd_1_1heap__allocator.html b/classwinstd_1_1heap__allocator.html index 61478236..146f6112 100644 --- a/classwinstd_1_1heap__allocator.html +++ b/classwinstd_1_1heap__allocator.html @@ -3,13 +3,15 @@ - + WinStd: winstd::heap_allocator< _Ty > Class Template Reference + + @@ -32,23 +34,33 @@

- + + + +
Classes | @@ -99,73 +112,73 @@

- - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + +

Public Types

-typedef _Ty value_type
 A type that is managed by the allocator.
 
-typedef _Typointer
 A type that provides a pointer to the type of object managed by the allocator.
 
-typedef _Tyreference
 A type that provides a reference to the type of object managed by the allocator.
 
-typedef const _Tyconst_pointer
 A type that provides a constant pointer to the type of object managed by the allocator.
 
-typedef const _Tyconst_reference
 A type that provides a constant reference to type of object managed by the allocator.
 
-typedef SIZE_T size_type
 An unsigned integral type that can represent the length of any sequence that an object of template class heap_allocator can allocate.
 
-typedef ptrdiff_t difference_type
 A signed integral type that can represent the difference between values of pointers to the type of object managed by the allocator.
 
+typedef _Ty value_type
 A type that is managed by the allocator.
 
+typedef _Ty * pointer
 A type that provides a pointer to the type of object managed by the allocator.
 
+typedef _Ty & reference
 A type that provides a reference to the type of object managed by the allocator.
 
+typedef const _Ty * const_pointer
 A type that provides a constant pointer to the type of object managed by the allocator.
 
+typedef const _Ty & const_reference
 A type that provides a constant reference to type of object managed by the allocator.
 
+typedef SIZE_T size_type
 An unsigned integral type that can represent the length of any sequence that an object of template class heap_allocator can allocate.
 
+typedef ptrdiff_t difference_type
 A signed integral type that can represent the difference between values of pointers to the type of object managed by the allocator.
 
- + - - + + - + - + - + - + - + +size_type 

Public Member Functions

 heap_allocator (HANDLE heap)
 heap_allocator (HANDLE heap)
 Constructs allocator.
 
template<class _Other >
 heap_allocator (const heap_allocator< _Other > &other)
template<class _Other >
 heap_allocator (const heap_allocator< _Other > &other)
 Constructs allocator from another type.
 
pointer allocate (size_type count)
pointer allocate (size_type count)
 Allocates a new memory block.
 
void deallocate (pointer ptr, size_type size)
void deallocate (pointer ptr, size_type size)
 Frees memory block.
 
void construct (pointer ptr, const _Ty &val)
void construct (pointer ptr, const _Ty &val)
 Calls copying constructor for the element.
 
void construct (pointer ptr, _Ty &&val)
void construct (pointer ptr, _Ty &&val)
 Calls moving constructor for the element.
 
void destroy (pointer ptr)
void destroy (pointer ptr)
 Calls destructor for the element.
 
-size_type max_size () const
max_size () const
 Returns maximum memory block size.
 
+HANDLE 

Public Attributes

-HANDLE m_heap
m_heap
 Heap handle.
 

Detailed Description

-
template<class _Ty>
+
template<class _Ty>
class winstd::heap_allocator< _Ty >

HeapAlloc allocator.

Constructor & Destructor Documentation

@@ -174,15 +187,15 @@

+template<class _Ty >
- + - +
winstd::heap_allocator< _Ty >::heap_allocator winstd::heap_allocator< _Ty >::heap_allocator (HANDLE heap)HANDLE heap)
@@ -209,17 +222,17 @@

+template<class _Ty >
-template<class _Other >
+template<class _Other >
- + - +
winstd::heap_allocator< _Ty >::heap_allocator winstd::heap_allocator< _Ty >::heap_allocator (const heap_allocator< _Other > & other)const heap_allocator< _Other > & other)
@@ -247,15 +260,15 @@

+template<class _Ty >
- + @@ -109,7 +122,8 @@
- + - +
pointer winstd::heap_allocator< _Ty >::allocate pointer winstd::heap_allocator< _Ty >::allocate (size_type count)size_type count)
@@ -283,20 +296,20 @@

+template<class _Ty >
@@ -323,20 +336,20 @@

+template<class _Ty >

- + - + - +
void winstd::heap_allocator< _Ty >::construct void winstd::heap_allocator< _Ty >::construct (pointer ptr, pointer ptr,
_Ty && val )_Ty && val )
@@ -363,20 +376,20 @@

+template<class _Ty >

- + - + - +
void winstd::heap_allocator< _Ty >::construct void winstd::heap_allocator< _Ty >::construct (pointer ptr, pointer ptr,
const _Ty & val )const _Ty & val )
@@ -403,15 +416,15 @@

+template<class _Ty >

- + - + - +
void winstd::heap_allocator< _Ty >::deallocate void winstd::heap_allocator< _Ty >::deallocate (pointer ptr, pointer ptr,
size_type size )size_type size )
- + - +
void winstd::heap_allocator< _Ty >::destroy void winstd::heap_allocator< _Ty >::destroy (pointer ptr)pointer ptr)
@@ -438,7 +451,8 @@

+ diff --git a/classwinstd_1_1http-members.html b/classwinstd_1_1http-members.html index 03473f14..2e65a4dd 100644 --- a/classwinstd_1_1http-members.html +++ b/classwinstd_1_1http-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + + +
winstd::http Member List
@@ -89,7 +102,7 @@

handle() noexceptwinstd::handle< HINTERNET, NULL >inline
handle(handle_type h) noexceptwinstd::handle< HINTERNET, NULL >inline
handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< HINTERNET, NULL >inline
handle_type typedefwinstd::handle< HINTERNET, NULL >
handle_type typedefwinstd::handle< HINTERNET, NULL >
invalidwinstd::handle< HINTERNET, NULL >static
m_hwinstd::handle< HINTERNET, NULL >protected
operator handle_type() constwinstd::handle< HINTERNET, NULL >inline
+ diff --git a/classwinstd_1_1http.html b/classwinstd_1_1http.html index 90fe3dbb..18d1d390 100644 --- a/classwinstd_1_1http.html +++ b/classwinstd_1_1http.html @@ -3,13 +3,15 @@ - + WinStd: winstd::http Class Reference + + @@ -32,23 +34,33 @@

- + + + +
Public Member Functions | @@ -100,91 +113,92 @@ - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~http ()
virtual ~http ()
 Closes a handle to the HTTP.
 
- Public Member Functions inherited from winstd::handle< HINTERNET, NULL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Closes a handle to the HTTP.
 
- Protected Member Functions inherited from winstd::handle< HINTERNET, NULL >
- - - + + + +static const HINTERNET  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< HINTERNET, NULL >
-typedef HINTERNET handle_type
 Datatype of the object handle this template class handles.
 
+typedef HINTERNET handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< HINTERNET, NULL >
-static const HINTERNET invalid
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< HINTERNET, NULL >
-handle_type m_h
m_h
 Object handle.
 
@@ -202,9 +216,9 @@

- + - +
virtual winstd::http::~http virtual winstd::http::~http ())
@@ -231,9 +245,9 @@

- + - +
void winstd::http::free_internal void winstd::http::free_internal ())
@@ -257,7 +271,8 @@

+

diff --git a/classwinstd_1_1icon-members.html b/classwinstd_1_1icon-members.html index 0d66c1b4..e810bf2a 100644 --- a/classwinstd_1_1icon-members.html +++ b/classwinstd_1_1icon-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + +
+
winstd::icon Member List
@@ -89,7 +102,7 @@

handle() noexceptwinstd::handle< HICON, NULL >inline
handle(handle_type h) noexceptwinstd::handle< HICON, NULL >inline
handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< HICON, NULL >inline
handle_type typedefwinstd::handle< HICON, NULL >
handle_type typedefwinstd::handle< HICON, NULL >
invalidwinstd::handle< HICON, NULL >static
m_hwinstd::handle< HICON, NULL >protected
operator handle_type() constwinstd::handle< HICON, NULL >inline
+ diff --git a/classwinstd_1_1icon.html b/classwinstd_1_1icon.html index f33d6cf5..e8bd7e7e 100644 --- a/classwinstd_1_1icon.html +++ b/classwinstd_1_1icon.html @@ -3,13 +3,15 @@ - + WinStd: winstd::icon Class Reference + + @@ -32,23 +34,33 @@

- + + + +
Public Member Functions | @@ -100,91 +113,92 @@ - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~icon ()
virtual ~icon ()
 Closes an open object handle.
 
- Public Member Functions inherited from winstd::handle< HICON, NULL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Closes an open object handle.
 
- Protected Member Functions inherited from winstd::handle< HICON, NULL >
- - - + + + +static const HICON  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< HICON, NULL >
-typedef HICON handle_type
 Datatype of the object handle this template class handles.
 
+typedef HICON handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< HICON, NULL >
-static const HICON invalid
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< HICON, NULL >
-handle_type m_h
m_h
 Object handle.
 
@@ -201,9 +215,9 @@

- + - +
virtual winstd::icon::~icon virtual winstd::icon::~icon ())
@@ -230,9 +244,9 @@

- + - +
void winstd::icon::free_internal void winstd::icon::free_internal ())
@@ -256,7 +270,8 @@

+

diff --git a/classwinstd_1_1impersonator-members.html b/classwinstd_1_1impersonator-members.html index 626e037f..c71feb31 100644 --- a/classwinstd_1_1impersonator-members.html +++ b/classwinstd_1_1impersonator-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + + +
winstd::impersonator Member List
@@ -89,7 +102,8 @@

+ diff --git a/classwinstd_1_1impersonator.html b/classwinstd_1_1impersonator.html index 8b92c140..46ecfeb1 100644 --- a/classwinstd_1_1impersonator.html +++ b/classwinstd_1_1impersonator.html @@ -3,13 +3,15 @@ - + WinStd: winstd::impersonator Class Reference + + @@ -32,23 +34,33 @@

- + + + +
Public Member Functions | @@ -102,21 +115,21 @@

Public Member Functions

impersonator () noexcept
impersonator () noexcept
 Construct the impersonator.
 
virtual ~impersonator ()
virtual ~impersonator ()
 Reverts to current user and destructs the impersonator.
 
operator bool () const
operator bool () const
 Did impersonation succeed?
 
+BOOL 

Protected Attributes

-BOOL m_cookie
m_cookie
 Did impersonation succeed?
 
@@ -133,9 +146,9 @@

- + - +
virtual winstd::impersonator::~impersonator virtual winstd::impersonator::~impersonator ())
@@ -157,7 +170,8 @@

+ diff --git a/classwinstd_1_1last__error__saver-members.html b/classwinstd_1_1last__error__saver-members.html index 8e56607e..1d05a79c 100644 --- a/classwinstd_1_1last__error__saver-members.html +++ b/classwinstd_1_1last__error__saver-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + + +
winstd::last_error_saver Member List
@@ -88,7 +101,8 @@

+ diff --git a/classwinstd_1_1last__error__saver.html b/classwinstd_1_1last__error__saver.html index 7c0327f6..a0c442c4 100644 --- a/classwinstd_1_1last__error__saver.html +++ b/classwinstd_1_1last__error__saver.html @@ -3,13 +3,15 @@ - + WinStd: winstd::last_error_saver Class Reference + + @@ -32,23 +34,33 @@

- + + + +
Public Member Functions | @@ -91,7 +104,7 @@ - + @@ -101,7 +114,7 @@ +DWORD 

Public Member Functions

 last_error_saver (DWORD error=GetLastError())
 last_error_saver (DWORD error=GetLastError())
 Saves the calling thread's last-error code value.
 
 ~last_error_saver ()

Protected Attributes

-DWORD m_error
m_error
 

Detailed Description

@@ -119,7 +132,7 @@

winstd::last_error_saver::last_error_saver

(DWORD error = GetLastError())DWORD error = GetLastError())
@@ -147,7 +160,7 @@

winstd::last_error_saver::~last_error_saver

())
@@ -169,7 +182,8 @@

+ diff --git a/classwinstd_1_1library-members.html b/classwinstd_1_1library-members.html index 2b723d7e..529f3e32 100644 --- a/classwinstd_1_1library-members.html +++ b/classwinstd_1_1library-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + +
+
winstd::library Member List
@@ -89,7 +102,7 @@ handle() noexceptwinstd::handle< HMODULE, NULL >inline handle(handle_type h) noexceptwinstd::handle< HMODULE, NULL >inline handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< HMODULE, NULL >inline - handle_type typedefwinstd::handle< HMODULE, NULL > + handle_type typedefwinstd::handle< HMODULE, NULL > invalidwinstd::handle< HMODULE, NULL >static m_hwinstd::handle< HMODULE, NULL >protected operator handle_type() constwinstd::handle< HMODULE, NULL >inline @@ -109,7 +122,8 @@
+
diff --git a/classwinstd_1_1library.html b/classwinstd_1_1library.html index 804f016a..086af00b 100644 --- a/classwinstd_1_1library.html +++ b/classwinstd_1_1library.html @@ -3,13 +3,15 @@ - + WinStd: winstd::library Class Reference + + @@ -32,23 +34,33 @@
- + + +
+
Public Member Functions | @@ -100,91 +113,92 @@ - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~library ()
virtual ~library ()
 Frees the module.
 
- Public Member Functions inherited from winstd::handle< HMODULE, NULL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Frees the module.
 
- Protected Member Functions inherited from winstd::handle< HMODULE, NULL >
- - - + + + +static const HMODULE  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< HMODULE, NULL >
-typedef HMODULE handle_type
 Datatype of the object handle this template class handles.
 
+typedef HMODULE handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< HMODULE, NULL >
-static const HMODULE invalid
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< HMODULE, NULL >
-handle_type m_h
m_h
 Object handle.
 
@@ -202,9 +216,9 @@

- + - +
virtual winstd::library::~library virtual winstd::library::~library ())
@@ -231,9 +245,9 @@

- + - +
void winstd::library::free_internal void winstd::library::free_internal ())
@@ -257,7 +271,8 @@

+

diff --git a/classwinstd_1_1mutex__locker-members.html b/classwinstd_1_1mutex__locker-members.html index c63c1b7b..5ff89dd1 100644 --- a/classwinstd_1_1mutex__locker-members.html +++ b/classwinstd_1_1mutex__locker-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::mutex_locker Member List
@@ -88,7 +101,8 @@
+
diff --git a/classwinstd_1_1mutex__locker.html b/classwinstd_1_1mutex__locker.html index 3597b084..b4888eee 100644 --- a/classwinstd_1_1mutex__locker.html +++ b/classwinstd_1_1mutex__locker.html @@ -3,13 +3,15 @@ - + WinStd: winstd::mutex_locker Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -91,17 +104,17 @@ - + - +

Public Member Functions

 mutex_locker (HANDLE hMutex, DWORD dwMilliseconds=INFINITE)
 mutex_locker (HANDLE hMutex, DWORD dwMilliseconds=INFINITE)
 Waits until the specified mutex is in the signaled state or the time-out interval elapses.
 
virtual ~mutex_locker ()
virtual ~mutex_locker ()
 Releases ownership of the mutex object.
 
+HANDLE 

Protected Attributes

-HANDLE m_h
m_h
 

Detailed Description

@@ -119,12 +132,12 @@

winstd::mutex_locker::mutex_locker ( - HANDLE hMutex, + HANDLE hMutex, - DWORD dwMilliseconds = INFINITE ) + DWORD dwMilliseconds = INFINITE ) @@ -156,9 +169,9 @@

- + - +
virtual winstd::mutex_locker::~mutex_locker virtual winstd::mutex_locker::~mutex_locker ())
@@ -180,7 +193,8 @@

+

diff --git a/classwinstd_1_1num__runtime__error-members.html b/classwinstd_1_1num__runtime__error-members.html index f9da9678..3c4b25bf 100644 --- a/classwinstd_1_1num__runtime__error-members.html +++ b/classwinstd_1_1num__runtime__error-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::num_runtime_error< _Tn > Member List
@@ -82,7 +95,7 @@

This is the complete list of members for winstd::num_runtime_error< _Tn >, including all inherited members.

- + @@ -90,7 +103,8 @@
error_type typedefwinstd::num_runtime_error< _Tn >
error_type typedefwinstd::num_runtime_error< _Tn >
m_numwinstd::num_runtime_error< _Tn >protected
num_runtime_error(error_type num, const std::string &msg)winstd::num_runtime_error< _Tn >inline
num_runtime_error(error_type num, const char *msg=nullptr)winstd::num_runtime_error< _Tn >inline
+ diff --git a/classwinstd_1_1num__runtime__error.html b/classwinstd_1_1num__runtime__error.html index e10d537d..a81e45b3 100644 --- a/classwinstd_1_1num__runtime__error.html +++ b/classwinstd_1_1num__runtime__error.html @@ -3,13 +3,15 @@ - + WinStd: winstd::num_runtime_error< _Tn > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Types | @@ -98,33 +111,33 @@ - - - + + +

Public Types

-typedef _Tn error_type
 Error number type.
 
+typedef _Tn error_type
 Error number type.
 
- + - + +error_type 

Public Member Functions

 num_runtime_error (error_type num, const std::string &msg)
 num_runtime_error (error_type num, const std::string &msg)
 Constructs an exception.
 
 num_runtime_error (error_type num, const char *msg=nullptr)
 num_runtime_error (error_type num, const char *msg=nullptr)
 Constructs an exception.
 
-error_type number () const
number () const
 Returns the error number.
 
+error_type 

Protected Attributes

-error_type m_num
m_num
 Numeric error code.
 

Detailed Description

-
template<typename _Tn>
+
template<typename _Tn>
class winstd::num_runtime_error< _Tn >

Numerical runtime error.

Constructor & Destructor Documentation

@@ -133,20 +146,20 @@

+template<typename _Tn >
@@ -173,20 +186,20 @@

+template<typename _Tn >

- + - + - +
winstd::num_runtime_error< _Tn >::num_runtime_error winstd::num_runtime_error< _Tn >::num_runtime_error (error_type num, error_type num,
const std::string & msg )const std::string & msg )
@@ -213,7 +226,8 @@

+ diff --git a/classwinstd_1_1process__information-members.html b/classwinstd_1_1process__information-members.html index cc6cd727..a1cd2755 100644 --- a/classwinstd_1_1process__information-members.html +++ b/classwinstd_1_1process__information-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + - + - +
winstd::num_runtime_error< _Tn >::num_runtime_error winstd::num_runtime_error< _Tn >::num_runtime_error (error_type num, error_type num,
const char * msg = nullptr )const char * msg = nullptr )

- + + +
+
winstd::process_information Member List
@@ -87,7 +100,8 @@
+
diff --git a/classwinstd_1_1process__information.html b/classwinstd_1_1process__information.html index 8f7dec2b..6c80e621 100644 --- a/classwinstd_1_1process__information.html +++ b/classwinstd_1_1process__information.html @@ -3,13 +3,15 @@ - + WinStd: winstd::process_information Class Reference + + @@ -32,23 +34,33 @@
- + + +
+
Public Member Functions | @@ -97,7 +110,7 @@

Public Member Functions

process_information () noexceptprocess_information () noexcept  Constructs blank PROCESS_INFORMATION.
  @@ -113,7 +126,8 @@
+
diff --git a/classwinstd_1_1ref__unique__ptr-members.html b/classwinstd_1_1ref__unique__ptr-members.html index a257fc01..8472e8b3 100644 --- a/classwinstd_1_1ref__unique__ptr-members.html +++ b/classwinstd_1_1ref__unique__ptr-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + + +
winstd::ref_unique_ptr< _Ty, _Dx > Member List
@@ -92,7 +105,8 @@
+ diff --git a/classwinstd_1_1ref__unique__ptr.html b/classwinstd_1_1ref__unique__ptr.html index 6057283c..18d02321 100644 --- a/classwinstd_1_1ref__unique__ptr.html +++ b/classwinstd_1_1ref__unique__ptr.html @@ -3,13 +3,15 @@ - + WinStd: winstd::ref_unique_ptr< _Ty, _Dx > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -91,10 +104,10 @@ - + - + +std::unique_ptr< _Ty, _Dx > &  +_Ty * 

Public Member Functions

 ref_unique_ptr (std::unique_ptr< _Ty, _Dx > &owner)
 ref_unique_ptr (std::unique_ptr< _Ty, _Dx > &owner)
 Takes ownership of the pointer.
 
 ref_unique_ptr (ref_unique_ptr< _Ty, _Dx > &&other)
 ref_unique_ptr (ref_unique_ptr< _Ty, _Dx > &&other)
 Moves object.
 
@@ -111,16 +124,16 @@

Protected Attributes

-std::unique_ptr< _Ty, _Dx > & m_own
m_own
 Original owner of the pointer.
 
-_Tym_ptr
m_ptr
 Pointer.
 

Detailed Description

-
template<class _Ty, class _Dx>
+
template<class _Ty, class _Dx>
class winstd::ref_unique_ptr< _Ty, _Dx >

Helper class for returning pointers to std::unique_ptr.

Constructor & Destructor Documentation

@@ -129,15 +142,15 @@

+template<class _Ty , class _Dx >
- + - +
winstd::ref_unique_ptr< _Ty, _Dx >::ref_unique_ptr winstd::ref_unique_ptr< _Ty, _Dx >::ref_unique_ptr (std::unique_ptr< _Ty, _Dx > & owner)std::unique_ptr< _Ty, _Dx > & owner)
@@ -164,15 +177,15 @@

+template<class _Ty , class _Dx >
- + - +
winstd::ref_unique_ptr< _Ty, _Dx >::ref_unique_ptr winstd::ref_unique_ptr< _Ty, _Dx >::ref_unique_ptr (ref_unique_ptr< _Ty, _Dx > && other)ref_unique_ptr< _Ty, _Dx > && other)
@@ -200,15 +213,15 @@

+template<class _Ty , class _Dx >
- + - +
winstd::ref_unique_ptr< _Ty, _Dx >::operator typename _Ty *& winstd::ref_unique_ptr< _Ty, _Dx >::operator typename _Ty *& ())
@@ -230,15 +243,15 @@

+template<class _Ty , class _Dx >
- + - +
winstd::ref_unique_ptr< _Ty, _Dx >::operator typename _Ty ** winstd::ref_unique_ptr< _Ty, _Dx >::operator typename _Ty ** ())
@@ -260,7 +273,8 @@

+ diff --git a/classwinstd_1_1ref__unique__ptr_3_01___ty_0f_0e_00_01___dx_01_4-members.html b/classwinstd_1_1ref__unique__ptr_3_01___ty_0f_0e_00_01___dx_01_4-members.html index e6589996..64c2fb4d 100644 --- a/classwinstd_1_1ref__unique__ptr_3_01___ty_0f_0e_00_01___dx_01_4-members.html +++ b/classwinstd_1_1ref__unique__ptr_3_01___ty_0f_0e_00_01___dx_01_4-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + + +
winstd::ref_unique_ptr< _Ty[], _Dx > Member List
@@ -92,7 +105,8 @@

+ diff --git a/classwinstd_1_1ref__unique__ptr_3_01___ty_0f_0e_00_01___dx_01_4.html b/classwinstd_1_1ref__unique__ptr_3_01___ty_0f_0e_00_01___dx_01_4.html index f0585ca1..5cc3461e 100644 --- a/classwinstd_1_1ref__unique__ptr_3_01___ty_0f_0e_00_01___dx_01_4.html +++ b/classwinstd_1_1ref__unique__ptr_3_01___ty_0f_0e_00_01___dx_01_4.html @@ -3,13 +3,15 @@ - + WinStd: winstd::ref_unique_ptr< _Ty[], _Dx > Class Template Reference + + @@ -32,23 +34,33 @@

- + + + +
Public Member Functions | @@ -91,17 +104,17 @@ - + - + +virtual  - + @@ -111,16 +124,16 @@ +std::unique_ptr< _Ty[], _Dx > &  +_Ty * 

Public Member Functions

 ref_unique_ptr (std::unique_ptr< _Ty[], _Dx > &owner) noexcept
 ref_unique_ptr (std::unique_ptr< _Ty[], _Dx > &owner) noexcept
 Takes ownership of the pointer.
 
 ref_unique_ptr (ref_unique_ptr< _Ty[], _Dx > &&other)
 ref_unique_ptr (ref_unique_ptr< _Ty[], _Dx > &&other)
 Moves object.
 
-virtual ~ref_unique_ptr ()
~ref_unique_ptr ()
 Returns ownership of the pointer.
 
 operator typename _Ty ** () noexcept
 operator typename _Ty ** () noexcept
 Operator for pointer-to-pointer parameters by value use-cases.
 
 operator typename _Ty *& ()

Protected Attributes

-std::unique_ptr< _Ty[], _Dx > & m_own
m_own
 Original owner of the pointer.
 
-_Tym_ptr
m_ptr
 Pointer.
 

Detailed Description

-
template<class _Ty, class _Dx>
+
template<class _Ty, class _Dx>
class winstd::ref_unique_ptr< _Ty[], _Dx >

Helper class for returning pointers to std::unique_ptr (specialization for arrays)

Constructor & Destructor Documentation

@@ -129,15 +142,15 @@

+template<class _Ty , class _Dx >
- + - +
winstd::ref_unique_ptr< _Ty[], _Dx >::ref_unique_ptr winstd::ref_unique_ptr< _Ty[], _Dx >::ref_unique_ptr (std::unique_ptr< _Ty[], _Dx > & owner)std::unique_ptr< _Ty[], _Dx > & owner)
@@ -164,15 +177,15 @@

+template<class _Ty , class _Dx >
- + - +
winstd::ref_unique_ptr< _Ty[], _Dx >::ref_unique_ptr winstd::ref_unique_ptr< _Ty[], _Dx >::ref_unique_ptr (ref_unique_ptr< _Ty[], _Dx > && other)ref_unique_ptr< _Ty[], _Dx > && other)
@@ -200,15 +213,15 @@

+template<class _Ty , class _Dx >
- + @@ -110,7 +123,8 @@
- + - +
winstd::ref_unique_ptr< _Ty[], _Dx >::operator typename _Ty *& winstd::ref_unique_ptr< _Ty[], _Dx >::operator typename _Ty *& ())
@@ -230,15 +243,15 @@

+template<class _Ty , class _Dx >
- + - +
winstd::ref_unique_ptr< _Ty[], _Dx >::operator typename _Ty ** winstd::ref_unique_ptr< _Ty[], _Dx >::operator typename _Ty ** ())
@@ -260,7 +273,8 @@

+ diff --git a/classwinstd_1_1reg__key-members.html b/classwinstd_1_1reg__key-members.html index eecd6b97..95e0e086 100644 --- a/classwinstd_1_1reg__key-members.html +++ b/classwinstd_1_1reg__key-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + + +
winstd::reg_key Member List
@@ -90,7 +103,7 @@

handle() noexceptwinstd::handle< HKEY, NULL >inline
handle(handle_type h) noexceptwinstd::handle< HKEY, NULL >inline
handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< HKEY, NULL >inline
handle_type typedefwinstd::handle< HKEY, NULL >
handle_type typedefwinstd::handle< HKEY, NULL >
invalidwinstd::handle< HKEY, NULL >static
m_hwinstd::handle< HKEY, NULL >protected
operator handle_type() constwinstd::handle< HKEY, NULL >inline
+ diff --git a/classwinstd_1_1reg__key.html b/classwinstd_1_1reg__key.html index 9c182abc..64bca4fc 100644 --- a/classwinstd_1_1reg__key.html +++ b/classwinstd_1_1reg__key.html @@ -3,13 +3,15 @@ - + WinStd: winstd::reg_key Class Reference + + @@ -32,23 +34,33 @@

- + + + +
Public Member Functions | @@ -100,94 +113,95 @@ - + - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~reg_key ()
virtual ~reg_key ()
 Closes a handle to the registry key.
 
bool delete_subkey (LPCTSTR szSubkey)
bool delete_subkey (LPCTSTR szSubkey)
 Deletes the specified registry subkey.
 
- Public Member Functions inherited from winstd::handle< HKEY, NULL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Closes a handle to the registry key.
 
- Protected Member Functions inherited from winstd::handle< HKEY, NULL >
- - - + + + +static const HKEY  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< HKEY, NULL >
-typedef HKEY handle_type
 Datatype of the object handle this template class handles.
 
+typedef HKEY handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< HKEY, NULL >
-static const HKEY invalid
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< HKEY, NULL >
-handle_type m_h
m_h
 Object handle.
 
@@ -207,9 +221,9 @@

- + - +
virtual winstd::reg_key::~reg_key virtual winstd::reg_key::~reg_key ())
@@ -236,9 +250,9 @@

- + - +
bool winstd::reg_key::delete_subkey bool winstd::reg_key::delete_subkey (LPCTSTR szSubkey)LPCTSTR szSubkey)
@@ -274,9 +288,9 @@

- + - +
void winstd::reg_key::free_internal void winstd::reg_key::free_internal ())
@@ -300,7 +314,8 @@

+

diff --git a/classwinstd_1_1safearray-members.html b/classwinstd_1_1safearray-members.html index d6248aeb..e1fd1caf 100644 --- a/classwinstd_1_1safearray-members.html +++ b/classwinstd_1_1safearray-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + +
+
winstd::safearray Member List
@@ -82,43 +95,44 @@

This is the complete list of members for winstd::safearray, including all inherited members.

- + - + - + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - + + + +
attach(handle_type h) noexceptwinstd::handle< T, INVAL >inline
attach(handle_type h) noexceptwinstd::handle< SAFEARRAY *, INVAL >inline
attach_duplicated(handle_type h)winstd::dplhandle< SAFEARRAY *, NULL >inline
detach()winstd::handle< T, INVAL >inline
detach()winstd::handle< SAFEARRAY *, INVAL >inline
dplhandle() noexceptwinstd::dplhandle< SAFEARRAY *, NULL >inline
dplhandle(handle_type h) noexceptwinstd::dplhandle< SAFEARRAY *, NULL >inline
dplhandle(const dplhandle< handle_type, INVAL > &h)winstd::dplhandle< SAFEARRAY *, NULL >inline
dplhandle(dplhandle< handle_type, INVAL > &&h) noexceptwinstd::dplhandle< SAFEARRAY *, NULL >inline
duplicate() constwinstd::dplhandle< SAFEARRAY *, NULL >inline
duplicate_internal(handle_type h) const overridewinstd::safearrayinlineprotectedvirtual
free()winstd::handle< T, INVAL >inline
free()winstd::handle< SAFEARRAY *, INVAL >inline
free_internal() noexcept overridewinstd::safearrayinlineprotectedvirtual
handle() noexceptwinstd::handle< T, INVAL >inline
handle(handle_type h) noexceptwinstd::handle< T, INVAL >inline
handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< T, INVAL >inline
handle_type typedefwinstd::handle< T, INVAL >
invalidwinstd::handle< T, INVAL >static
m_hwinstd::handle< T, INVAL >protected
operator handle_type() constwinstd::handle< T, INVAL >inline
operator!() constwinstd::handle< T, INVAL >inline
operator!=(handle_type h) constwinstd::handle< T, INVAL >inline
operator&()winstd::handle< T, INVAL >inline
operator*() constwinstd::handle< T, INVAL >inline
operator->() constwinstd::handle< T, INVAL >inline
operator<(handle_type h) constwinstd::handle< T, INVAL >inline
operator<=(handle_type h) constwinstd::handle< T, INVAL >inline
handle() noexceptwinstd::handle< SAFEARRAY *, INVAL >inline
handle(handle_type h) noexceptwinstd::handle< SAFEARRAY *, INVAL >inline
handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< SAFEARRAY *, INVAL >inline
handle_type typedefwinstd::handle< SAFEARRAY *, INVAL >
invalidwinstd::handle< SAFEARRAY *, INVAL >static
m_hwinstd::handle< SAFEARRAY *, INVAL >protected
operator handle_type() constwinstd::handle< SAFEARRAY *, INVAL >inline
operator!() constwinstd::handle< SAFEARRAY *, INVAL >inline
operator!=(handle_type h) constwinstd::handle< SAFEARRAY *, INVAL >inline
operator&()winstd::handle< SAFEARRAY *, INVAL >inline
operator*() constwinstd::handle< SAFEARRAY *, INVAL >inline
operator->() constwinstd::handle< SAFEARRAY *, INVAL >inline
operator<(handle_type h) constwinstd::handle< SAFEARRAY *, INVAL >inline
operator<=(handle_type h) constwinstd::handle< SAFEARRAY *, INVAL >inline
operator=(handle_type h) noexceptwinstd::dplhandle< SAFEARRAY *, NULL >inline
operator=(const dplhandle< handle_type, INVAL > &h) noexceptwinstd::dplhandle< SAFEARRAY *, NULL >inline
operator=(dplhandle< handle_type, INVAL > &&h) noexceptwinstd::dplhandle< SAFEARRAY *, NULL >inline
winstd::handle::operator=(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< T, INVAL >inline
operator==(handle_type h) constwinstd::handle< T, INVAL >inline
operator>(handle_type h) constwinstd::handle< T, INVAL >inline
operator>=(handle_type h) constwinstd::handle< T, INVAL >inline
winstd::handle< SAFEARRAY *, INVAL >::operator=(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< SAFEARRAY *, INVAL >inline
operator==(handle_type h) constwinstd::handle< SAFEARRAY *, INVAL >inline
operator>(handle_type h) constwinstd::handle< SAFEARRAY *, INVAL >inline
operator>=(handle_type h) constwinstd::handle< SAFEARRAY *, INVAL >inline
~safearray()winstd::safearrayinlinevirtual
+
diff --git a/classwinstd_1_1safearray.html b/classwinstd_1_1safearray.html index dbfbea70..2f67ab56 100644 --- a/classwinstd_1_1safearray.html +++ b/classwinstd_1_1safearray.html @@ -3,13 +3,15 @@ - + WinStd: winstd::safearray Class Reference + + @@ -32,23 +34,33 @@

- + + +
+
Public Member Functions | @@ -95,129 +108,131 @@ winstd::dplhandle< SAFEARRAY *, NULL > -winstd::handle< T, INVAL > +winstd::handle< SAFEARRAY *, INVAL >
- + +  - + - + - + - + - + - + - + - + - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~safearray ()
virtual ~safearray ()
 Destroys the array.
 
- Public Member Functions inherited from winstd::dplhandle< SAFEARRAY *, NULL >
dplhandle () noexcept
dplhandle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 dplhandle (handle_type h) noexcept
 dplhandle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 dplhandle (const dplhandle< handle_type, INVAL > &h)
 dplhandle (const dplhandle< handle_type, INVAL > &h)
 Copy constructor.
 
 dplhandle (dplhandle< handle_type, INVAL > &&h) noexcept
 dplhandle (dplhandle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
dplhandle< handle_type, INVAL > & operator= (handle_type h) noexcept
dplhandle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
dplhandle< handle_type, INVAL > & operator= (const dplhandle< handle_type, INVAL > &h) noexcept
dplhandle< handle_type, INVAL > & operator= (const dplhandle< handle_type, INVAL > &h) noexcept
 Duplicates the object.
 
dplhandle< handle_type, INVAL > & operator= (dplhandle< handle_type, INVAL > &&h) noexcept
dplhandle< handle_type, INVAL > & operator= (dplhandle< handle_type, INVAL > &&h) noexcept
 Moves the object.
 
handle_type duplicate () const
handle_type duplicate () const
 Duplicates and returns a new object handle.
 
void attach_duplicated (handle_type h)
void attach_duplicated (handle_type h)
 Duplicates an object handle and sets a new object handle.
 
- Public Member Functions inherited from winstd::handle< T, INVAL >
- Public Member Functions inherited from winstd::handle< SAFEARRAY *, INVAL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + - + + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Destroys the array.
 
handle_type duplicate_internal (handle_type h) const override
handle_type duplicate_internal (handle_type h) const override
 Duplicates the array.
 
- Protected Member Functions inherited from winstd::dplhandle< SAFEARRAY *, NULL >
- Protected Member Functions inherited from winstd::handle< SAFEARRAY *, INVAL >
- - - - - + + + + + +static const SAFEARRAY *  - + +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< T, INVAL >
-typedef T handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< T, INVAL >
- Public Types inherited from winstd::handle< SAFEARRAY *, INVAL >
+typedef SAFEARRAY * handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< SAFEARRAY *, INVAL >
-static const T invalid = INVAL
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< T, INVAL >
- Protected Attributes inherited from winstd::handle< SAFEARRAY *, INVAL >
-handle_type m_h
m_h
 Object handle.
 
@@ -234,9 +249,9 @@

- + - +
virtual winstd::safearray::~safearray virtual winstd::safearray::~safearray ())
@@ -263,9 +278,9 @@

- + - +
handle_type winstd::safearray::duplicate_internal handle_type winstd::safearray::duplicate_internal (handle_type h)handle_type h) const
@@ -300,9 +315,9 @@

- + - +
void winstd::safearray::free_internal void winstd::safearray::free_internal ())
@@ -316,7 +331,7 @@

See also
SafeArrayDestroy function
-

Implements winstd::handle< T, INVAL >.

+

Implements winstd::handle< SAFEARRAY *, INVAL >.

@@ -326,7 +341,8 @@

+

diff --git a/classwinstd_1_1safearray__accessor-members.html b/classwinstd_1_1safearray__accessor-members.html index aed2b9d6..6e815823 100644 --- a/classwinstd_1_1safearray__accessor-members.html +++ b/classwinstd_1_1safearray__accessor-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + + +
winstd::safearray_accessor< T > Member List
@@ -90,7 +103,8 @@
+ diff --git a/classwinstd_1_1safearray__accessor.html b/classwinstd_1_1safearray__accessor.html index 2b0c21d5..b35cb001 100644 --- a/classwinstd_1_1safearray__accessor.html +++ b/classwinstd_1_1safearray__accessor.html @@ -3,13 +3,15 @@ - + WinStd: winstd::safearray_accessor< T > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -91,30 +104,30 @@ - + - + +T HUGEP * 

Public Member Functions

 safearray_accessor (SAFEARRAY *psa)
 safearray_accessor (SAFEARRAY *psa)
 Increments the lock count of an array, and retrieves a pointer to the array data.
 
virtual ~safearray_accessor ()
virtual ~safearray_accessor ()
 Decrements the lock count of an array.
 
-T HUGEPdata () const noexcept
data () const noexcept
 Return SAFEARRAY data pointer.
 
+SAFEARRAY *  +T HUGEP * 

Protected Attributes

-SAFEARRAYm_sa
m_sa
 SAFEARRAY.
 
-T HUGEPm_data
m_data
 SAFEARRAY data.
 

Detailed Description

-
template<class T>
+
template<class T>
class winstd::safearray_accessor< T >

Context scope automatic SAFEARRAY (un)access.

Constructor & Destructor Documentation

@@ -123,15 +136,15 @@

+template<class T >
- + - +
winstd::safearray_accessor< T >::safearray_accessor winstd::safearray_accessor< T >::safearray_accessor (SAFEARRAY * psa)SAFEARRAY * psa)
@@ -153,15 +166,15 @@

+template<class T >
- + - +
virtual winstd::safearray_accessor< T >::~safearray_accessor virtual winstd::safearray_accessor< T >::~safearray_accessor ())
@@ -183,7 +196,8 @@

+ diff --git a/classwinstd_1_1sanitizing__allocator-members.html b/classwinstd_1_1sanitizing__allocator-members.html index 92d5bb2e..e1b3db89 100644 --- a/classwinstd_1_1sanitizing__allocator-members.html +++ b/classwinstd_1_1sanitizing__allocator-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + + +
winstd::sanitizing_allocator< _Ty > Member List
@@ -82,7 +95,7 @@

This is the complete list of members for winstd::sanitizing_allocator< _Ty >, including all inherited members.

- + @@ -90,7 +103,8 @@
_Mybase typedefwinstd::sanitizing_allocator< _Ty >
_Mybase typedefwinstd::sanitizing_allocator< _Ty >
deallocate(_Ty *const _Ptr, const std::size_t _Count)winstd::sanitizing_allocator< _Ty >inline
sanitizing_allocator() noexceptwinstd::sanitizing_allocator< _Ty >inline
sanitizing_allocator(const sanitizing_allocator< _Ty > &_Othr)winstd::sanitizing_allocator< _Ty >inline
+ diff --git a/classwinstd_1_1sanitizing__allocator.html b/classwinstd_1_1sanitizing__allocator.html index 050a4a0b..735ee2cb 100644 --- a/classwinstd_1_1sanitizing__allocator.html +++ b/classwinstd_1_1sanitizing__allocator.html @@ -3,13 +3,15 @@ - + WinStd: winstd::sanitizing_allocator< _Ty > Class Template Reference + + @@ -32,23 +34,33 @@

- + + +
+
Classes | @@ -104,33 +117,33 @@ - - - + + +

Public Types

-typedef std::allocator< _Ty_Mybase
 Base type.
 
+typedef std::allocator< _Ty > _Mybase
 Base type.
 
+  +  - +template<class _Other > + +void 

Public Member Functions

sanitizing_allocator () noexcept
sanitizing_allocator () noexcept
 Construct default allocator.
 
sanitizing_allocator (const sanitizing_allocator< _Ty > &_Othr)
sanitizing_allocator (const sanitizing_allocator< _Ty > &_Othr)
 Construct by copying.
 
-template<class _Other >
 sanitizing_allocator (const sanitizing_allocator< _Other > &_Othr) noexcept
 sanitizing_allocator (const sanitizing_allocator< _Other > &_Othr) noexcept
 Construct from a related allocator.
 
-void deallocate (_Ty *const _Ptr, const std::size_t _Count)
deallocate (_Ty *const _Ptr, const std::size_t _Count)
 Deallocate object at _Ptr sanitizing its content first.
 

Detailed Description

-
template<class _Ty>
+
template<class _Ty>
class winstd::sanitizing_allocator< _Ty >

An allocator template that sanitizes each memory block before it is destroyed or reallocated.

Note
sanitizing_allocator introduces a performance penalty. However, it provides an additional level of security. Use for security sensitive data memory storage only.

The documentation for this class was generated from the following file:
    @@ -139,7 +152,8 @@
+
diff --git a/classwinstd_1_1sanitizing__blob-members.html b/classwinstd_1_1sanitizing__blob-members.html index 22ef25c6..4e51c6fb 100644 --- a/classwinstd_1_1sanitizing__blob-members.html +++ b/classwinstd_1_1sanitizing__blob-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::sanitizing_blob< N > Member List
@@ -88,7 +101,8 @@
+
diff --git a/classwinstd_1_1sanitizing__blob.html b/classwinstd_1_1sanitizing__blob.html index 18c37bb5..3d9ab665 100644 --- a/classwinstd_1_1sanitizing__blob.html +++ b/classwinstd_1_1sanitizing__blob.html @@ -3,13 +3,15 @@ - + WinStd: winstd::sanitizing_blob< N > Class Template Reference + + @@ -32,23 +34,33 @@
- + + +
+
Public Member Functions | @@ -103,12 +116,12 @@

Public Attributes

-unsigned char m_data [N] +unsigned char m_data [N]  BLOB data.
 

Detailed Description

-
template<size_t N>
+
template<size_t N>
class winstd::sanitizing_blob< N >

Sanitizing BLOB.


The documentation for this class was generated from the following file:
  • include/WinStd/Common.h
  • @@ -116,7 +129,8 @@
+
diff --git a/classwinstd_1_1sc__handle-members.html b/classwinstd_1_1sc__handle-members.html index 4d960327..a5e17054 100644 --- a/classwinstd_1_1sc__handle-members.html +++ b/classwinstd_1_1sc__handle-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::sc_handle Member List
@@ -89,7 +102,7 @@ handle() noexceptwinstd::handle< SC_HANDLE, NULL >inline handle(handle_type h) noexceptwinstd::handle< SC_HANDLE, NULL >inline handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< SC_HANDLE, NULL >inline - handle_type typedefwinstd::handle< SC_HANDLE, NULL > + handle_type typedefwinstd::handle< SC_HANDLE, NULL > invalidwinstd::handle< SC_HANDLE, NULL >static m_hwinstd::handle< SC_HANDLE, NULL >protected operator handle_type() constwinstd::handle< SC_HANDLE, NULL >inline @@ -109,7 +122,8 @@
+
diff --git a/classwinstd_1_1sc__handle.html b/classwinstd_1_1sc__handle.html index 9b23eff3..82a21025 100644 --- a/classwinstd_1_1sc__handle.html +++ b/classwinstd_1_1sc__handle.html @@ -3,13 +3,15 @@ - + WinStd: winstd::sc_handle Class Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -100,91 +113,92 @@ - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~sc_handle ()
virtual ~sc_handle ()
 Closes an open object handle.
 
- Public Member Functions inherited from winstd::handle< SC_HANDLE, NULL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Closes an open object handle.
 
- Protected Member Functions inherited from winstd::handle< SC_HANDLE, NULL >
- - - + + + +static const SC_HANDLE  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< SC_HANDLE, NULL >
-typedef SC_HANDLE handle_type
 Datatype of the object handle this template class handles.
 
+typedef SC_HANDLE handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< SC_HANDLE, NULL >
-static const SC_HANDLE invalid
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< SC_HANDLE, NULL >
-handle_type m_h
m_h
 Object handle.
 
@@ -201,9 +215,9 @@

- + - +
virtual winstd::sc_handle::~sc_handle virtual winstd::sc_handle::~sc_handle ())
@@ -230,9 +244,9 @@

- + - +
void winstd::sc_handle::free_internal void winstd::sc_handle::free_internal ())
@@ -256,7 +270,8 @@

+

diff --git a/classwinstd_1_1sec__buffer__desc-members.html b/classwinstd_1_1sec__buffer__desc-members.html index 573f6ced..7d921ec1 100644 --- a/classwinstd_1_1sec__buffer__desc-members.html +++ b/classwinstd_1_1sec__buffer__desc-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::sec_buffer_desc Member List
@@ -87,7 +100,8 @@
+ diff --git a/classwinstd_1_1sec__buffer__desc.html b/classwinstd_1_1sec__buffer__desc.html index c2943ed7..fdd09c57 100644 --- a/classwinstd_1_1sec__buffer__desc.html +++ b/classwinstd_1_1sec__buffer__desc.html @@ -3,13 +3,15 @@ - + WinStd: winstd::sec_buffer_desc Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -97,10 +110,10 @@

Public Member Functions

sec_buffer_desc (PSecBuffer buf, ULONG count, ULONG version=SECBUFFER_VERSION) + sec_buffer_desc (PSecBuffer buf, ULONG count, ULONG version=SECBUFFER_VERSION)  Initializes security buffer descriptor.
  -virtual ~sec_buffer_desc () +virtual ~sec_buffer_desc ()  Frees the security buffer descriptor.
  @@ -117,9 +130,9 @@

- + - +
virtual winstd::sec_buffer_desc::~sec_buffer_desc virtual winstd::sec_buffer_desc::~sec_buffer_desc ())
@@ -141,7 +154,8 @@

+

diff --git a/classwinstd_1_1sec__context-members.html b/classwinstd_1_1sec__context-members.html index 8a98fe37..a6904c40 100644 --- a/classwinstd_1_1sec__context-members.html +++ b/classwinstd_1_1sec__context-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::sec_context Member List
@@ -89,7 +102,7 @@ handle() noexceptwinstd::handle< PCtxtHandle, NULL >inline handle(handle_type h) noexceptwinstd::handle< PCtxtHandle, NULL >inline handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< PCtxtHandle, NULL >inline - handle_type typedefwinstd::handle< PCtxtHandle, NULL > + handle_type typedefwinstd::handle< PCtxtHandle, NULL > initialize(PCredHandle phCredential, LPCTSTR pszTargetName, ULONG fContextReq, ULONG TargetDataRep, PSecBufferDesc pInput, PSecBufferDesc pOutput)winstd::sec_contextinline invalidwinstd::handle< PCtxtHandle, NULL >static m_attribwinstd::sec_context @@ -104,8 +117,8 @@ operator<(handle_type h) constwinstd::handle< PCtxtHandle, NULL >inline operator<=(handle_type h) constwinstd::handle< PCtxtHandle, NULL >inline operator=(sec_context &&h) noexceptwinstd::sec_contextinline - handle< PCtxtHandle, NULL >::operator=(handle_type h) noexceptwinstd::handle< PCtxtHandle, NULL >inline - handle< PCtxtHandle, NULL >::operator=(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< PCtxtHandle, NULL >inline + winstd::handle< PCtxtHandle, NULL >::operator=(handle_type h) noexceptwinstd::handle< PCtxtHandle, NULL >inline + winstd::handle< PCtxtHandle, NULL >::operator=(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< PCtxtHandle, NULL >inline operator==(handle_type h) constwinstd::handle< PCtxtHandle, NULL >inline operator>(handle_type h) constwinstd::handle< PCtxtHandle, NULL >inline operator>=(handle_type h) constwinstd::handle< PCtxtHandle, NULL >inline @@ -116,7 +129,8 @@
+ diff --git a/classwinstd_1_1sec__context.html b/classwinstd_1_1sec__context.html index 102b4a67..99d53bc2 100644 --- a/classwinstd_1_1sec__context.html +++ b/classwinstd_1_1sec__context.html @@ -3,13 +3,15 @@ - + WinStd: winstd::sec_context Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -105,114 +118,115 @@  sec_context ()  Initializes a new class instance with the object handle set to NULL.
  - sec_context (sec_context &&h) noexceptsec_context (sec_context &&h) noexcept  Move constructor.
  -virtual ~sec_context () +virtual ~sec_context ()  Frees the security context.
  -sec_contextoperator= (sec_context &&h) noexcept +sec_contextoperator= (sec_context &&h) noexcept  Move assignment.
  -SECURITY_STATUS initialize (PCredHandle phCredential, LPCTSTR pszTargetName, ULONG fContextReq, ULONG TargetDataRep, PSecBufferDesc pInput, PSecBufferDesc pOutput) +SECURITY_STATUS initialize (PCredHandle phCredential, LPCTSTR pszTargetName, ULONG fContextReq, ULONG TargetDataRep, PSecBufferDesc pInput, PSecBufferDesc pOutput)  Initializes security context.
  -SECURITY_STATUS process (PCredHandle phCredential, LPCTSTR pszTargetName, ULONG fContextReq, ULONG TargetDataRep, PSecBufferDesc pInput, PSecBufferDesc pOutput) +SECURITY_STATUS process (PCredHandle phCredential, LPCTSTR pszTargetName, ULONG fContextReq, ULONG TargetDataRep, PSecBufferDesc pInput, PSecBufferDesc pOutput)  Continue security context.
  - Public Member Functions inherited from winstd::handle< PCtxtHandle, NULL >handle () noexcepthandle () noexcept  Initializes a new class instance with the object handle set to INVAL.
  - handle (handle_type h) noexcepthandle (handle_type h) noexcept  Initializes a new class instance with an already available object handle.
  - handle (handle< handle_type, INVAL > &&h) noexcepthandle (handle< handle_type, INVAL > &&h) noexcept  Move constructor.
  -handle< handle_type, INVAL > & operator= (handle_type h) noexcept +handle< handle_type, INVAL > & operator= (handle_type h) noexcept  Attaches already available object handle.
  -handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept +handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept  Move assignment.
  - operator handle_type () constoperator handle_type () const  Auto-typecasting operator.
  -handle_type *& operator* () const +handle_type *& operator* () const  Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
  -handle_typeoperator& () +handle_typeoperator& ()  Returns the object handle reference.
  -handle_type operator-> () const +handle_type operator-> () const  Provides object handle member access when the object handle is a pointer to a class or struct.
  -bool operator! () const +bool operator! () const  Tests if the object handle is invalid.
  -bool operator< (handle_type h) const +bool operator< (handle_type h) const  Is handle less than?
  -bool operator<= (handle_type h) const +bool operator<= (handle_type h) const  Is handle less than or equal to?
  -bool operator>= (handle_type h) const +bool operator>= (handle_type h) const  Is handle greater than or equal to?
  -bool operator> (handle_type h) const +bool operator> (handle_type h) const  Is handle greater than?
  -bool operator!= (handle_type h) const +bool operator!= (handle_type h) const  Is handle not equal to?
  -bool operator== (handle_type h) const +bool operator== (handle_type h) const  Is handle equal to?
  -void attach (handle_type h) noexcept +void attach (handle_type h) noexcept  Sets a new object handle for the class.
  -handle_type detach () +handle_type detach ()  Dismisses the object handle from this class.
  -void free () +void free ()  Destroys the object.
  +ULONG  +TimeStamp 

Public Attributes

-ULONG m_attrib
m_attrib
 Context attributes.
 
-TimeStamp m_expires
m_expires
 Context expiration time.
 
- + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Frees the security context.
 
- Protected Member Functions inherited from winstd::handle< PCtxtHandle, NULL >
- - - + + + +static const PCtxtHandle  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< PCtxtHandle, NULL >
-typedef PCtxtHandle handle_type
 Datatype of the object handle this template class handles.
 
+typedef PCtxtHandle handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< PCtxtHandle, NULL >
-static const PCtxtHandle invalid
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< PCtxtHandle, NULL >
-handle_type m_h
m_h
 Object handle.
 
@@ -262,9 +276,9 @@

- + - +
virtual winstd::sec_context::~sec_context virtual winstd::sec_context::~sec_context ())
@@ -291,9 +305,9 @@

- + - +
void winstd::sec_context::free_internal void winstd::sec_context::free_internal ())
@@ -321,34 +335,34 @@

- + - + - + - + - + - + - +
SECURITY_STATUS winstd::sec_context::initialize SECURITY_STATUS winstd::sec_context::initialize (PCredHandle phCredential, PCredHandle phCredential,
LPCTSTR pszTargetName, LPCTSTR pszTargetName,
ULONG fContextReq, ULONG fContextReq,
ULONG TargetDataRep, ULONG TargetDataRep,
PSecBufferDesc pInput, PSecBufferDesc pInput,
PSecBufferDesc pOutput )PSecBufferDesc pOutput )
@@ -411,34 +425,34 @@

- + - + - + - + - + - + - +
SECURITY_STATUS winstd::sec_context::process SECURITY_STATUS winstd::sec_context::process (PCredHandle phCredential, PCredHandle phCredential,
LPCTSTR pszTargetName, LPCTSTR pszTargetName,
ULONG fContextReq, ULONG fContextReq,
ULONG TargetDataRep, ULONG TargetDataRep,
PSecBufferDesc pInput, PSecBufferDesc pInput,
PSecBufferDesc pOutput )PSecBufferDesc pOutput )
@@ -464,7 +478,8 @@

+

diff --git a/classwinstd_1_1sec__credentials-members.html b/classwinstd_1_1sec__credentials-members.html index 86d4fbf8..0cb220c5 100644 --- a/classwinstd_1_1sec__credentials-members.html +++ b/classwinstd_1_1sec__credentials-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+ + diff --git a/classwinstd_1_1sec__credentials.html b/classwinstd_1_1sec__credentials.html index 0bb736d1..b2916f61 100644 --- a/classwinstd_1_1sec__credentials.html +++ b/classwinstd_1_1sec__credentials.html @@ -3,13 +3,15 @@ - + WinStd: winstd::sec_credentials Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -105,110 +118,111 @@  sec_credentials ()  Initializes a new class instance with the object handle set to NULL.
  - sec_credentials (handle_type h, const TimeStamp expires) + sec_credentials (handle_type h, const TimeStamp expires)  Initializes a new class with an already available object handle.
  - sec_credentials (sec_credentials &&h) noexceptsec_credentials (sec_credentials &&h) noexcept  Move constructor.
  -virtual ~sec_credentials () +virtual ~sec_credentials ()  Frees the security credentials.
  -sec_credentialsoperator= (sec_credentials &&h) noexcept +sec_credentialsoperator= (sec_credentials &&h) noexcept  Move assignment.
  -SECURITY_STATUS acquire (LPTSTR pszPrincipal, LPTSTR pszPackage, unsigned long fCredentialUse, void *pvLogonId, void *pAuthData, SEC_GET_KEY_FN pGetKeyFn=NULL, void *pvGetKeyArgument=NULL) +SECURITY_STATUS acquire (LPTSTR pszPrincipal, LPTSTR pszPackage, unsigned long fCredentialUse, void *pvLogonId, void *pAuthData, SEC_GET_KEY_FN pGetKeyFn=NULL, void *pvGetKeyArgument=NULL)  Acquires the security credentials.
  - Public Member Functions inherited from winstd::handle< PCredHandle, NULL >handle () noexcepthandle () noexcept  Initializes a new class instance with the object handle set to INVAL.
  - handle (handle_type h) noexcepthandle (handle_type h) noexcept  Initializes a new class instance with an already available object handle.
  - handle (handle< handle_type, INVAL > &&h) noexcepthandle (handle< handle_type, INVAL > &&h) noexcept  Move constructor.
  -handle< handle_type, INVAL > & operator= (handle_type h) noexcept +handle< handle_type, INVAL > & operator= (handle_type h) noexcept  Attaches already available object handle.
  -handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept +handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept  Move assignment.
  - operator handle_type () constoperator handle_type () const  Auto-typecasting operator.
  -handle_type *& operator* () const +handle_type *& operator* () const  Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
  -handle_typeoperator& () +handle_typeoperator& ()  Returns the object handle reference.
  -handle_type operator-> () const +handle_type operator-> () const  Provides object handle member access when the object handle is a pointer to a class or struct.
  -bool operator! () const +bool operator! () const  Tests if the object handle is invalid.
  -bool operator< (handle_type h) const +bool operator< (handle_type h) const  Is handle less than?
  -bool operator<= (handle_type h) const +bool operator<= (handle_type h) const  Is handle less than or equal to?
  -bool operator>= (handle_type h) const +bool operator>= (handle_type h) const  Is handle greater than or equal to?
  -bool operator> (handle_type h) const +bool operator> (handle_type h) const  Is handle greater than?
  -bool operator!= (handle_type h) const +bool operator!= (handle_type h) const  Is handle not equal to?
  -bool operator== (handle_type h) const +bool operator== (handle_type h) const  Is handle equal to?
  -void attach (handle_type h) noexcept +void attach (handle_type h) noexcept  Sets a new object handle for the class.
  -handle_type detach () +handle_type detach ()  Dismisses the object handle from this class.
  -void free () +void free ()  Destroys the object.
  +TimeStamp 

Public Attributes

-TimeStamp m_expires
m_expires
 Credentials expiration time.
 
- + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Frees the security credentials.
 
- Protected Member Functions inherited from winstd::handle< PCredHandle, NULL >
- - - + + + +static const PCredHandle  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< PCredHandle, NULL >
-typedef PCredHandle handle_type
 Datatype of the object handle this template class handles.
 
+typedef PCredHandle handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< PCredHandle, NULL >
-static const PCredHandle invalid
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< PCredHandle, NULL >
-handle_type m_h
m_h
 Object handle.
 
@@ -227,12 +241,12 @@

winstd::sec_credentials::sec_credentials ( - handle_type h, + handle_type h, - const TimeStamp expires ) + const TimeStamp expires ) @@ -296,9 +310,9 @@

- + - +
virtual winstd::sec_credentials::~sec_credentials virtual winstd::sec_credentials::~sec_credentials ())
@@ -325,39 +339,39 @@

- + - + - + - + - + - + - + - +
SECURITY_STATUS winstd::sec_credentials::acquire SECURITY_STATUS winstd::sec_credentials::acquire (LPTSTR pszPrincipal, LPTSTR pszPrincipal,
LPTSTR pszPackage, LPTSTR pszPackage,
unsigned long fCredentialUse, unsigned long fCredentialUse,
void * pvLogonId, void * pvLogonId,
void * pAuthData, void * pAuthData,
SEC_GET_KEY_FN pGetKeyFn = NULL, SEC_GET_KEY_FN pGetKeyFn = NULL,
void * pvGetKeyArgument = NULL )void * pvGetKeyArgument = NULL )
@@ -387,9 +401,9 @@

- + - +
void winstd::sec_credentials::free_internal void winstd::sec_credentials::free_internal ())
@@ -446,7 +460,8 @@

+

diff --git a/classwinstd_1_1sec__runtime__error-members.html b/classwinstd_1_1sec__runtime__error-members.html index 8bbefdee..87c94c36 100644 --- a/classwinstd_1_1sec__runtime__error-members.html +++ b/classwinstd_1_1sec__runtime__error-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::sec_runtime_error Member List
@@ -82,7 +95,7 @@

This is the complete list of members for winstd::sec_runtime_error, including all inherited members.

- + @@ -93,7 +106,8 @@
error_type typedefwinstd::num_runtime_error< SECURITY_STATUS >
error_type typedefwinstd::num_runtime_error< SECURITY_STATUS >
m_numwinstd::num_runtime_error< SECURITY_STATUS >protected
num_runtime_error(error_type num, const std::string &msg)winstd::num_runtime_error< SECURITY_STATUS >inline
num_runtime_error(error_type num, const char *msg=nullptr)winstd::num_runtime_error< SECURITY_STATUS >inline
+ diff --git a/classwinstd_1_1sec__runtime__error.html b/classwinstd_1_1sec__runtime__error.html index afa276b1..9e9eed61 100644 --- a/classwinstd_1_1sec__runtime__error.html +++ b/classwinstd_1_1sec__runtime__error.html @@ -3,13 +3,15 @@ - + WinStd: winstd::sec_runtime_error Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -99,37 +112,37 @@ - + - + - + - + - + +error_type 

Public Member Functions

 sec_runtime_error (error_type num, const std::string &msg)
 sec_runtime_error (error_type num, const std::string &msg)
 Constructs an exception.
 
 sec_runtime_error (error_type num, const char *msg=nullptr)
 sec_runtime_error (error_type num, const char *msg=nullptr)
 Constructs an exception.
 
 sec_runtime_error (const sec_runtime_error &other)
 sec_runtime_error (const sec_runtime_error &other)
 Copies an exception.
 
- Public Member Functions inherited from winstd::num_runtime_error< SECURITY_STATUS >
 num_runtime_error (error_type num, const std::string &msg)
 num_runtime_error (error_type num, const std::string &msg)
 Constructs an exception.
 
 num_runtime_error (error_type num, const char *msg=nullptr)
 num_runtime_error (error_type num, const char *msg=nullptr)
 Constructs an exception.
 
-error_type number () const
number () const
 Returns the error number.
 
- - - + + + +error_type 

Additional Inherited Members

- Public Types inherited from winstd::num_runtime_error< SECURITY_STATUS >
-typedef SECURITY_STATUS error_type
 Error number type.
 
+typedef SECURITY_STATUS error_type
 Error number type.
 
- Protected Attributes inherited from winstd::num_runtime_error< SECURITY_STATUS >
-error_type m_num
m_num
 Numeric error code.
 
@@ -149,12 +162,12 @@

winstd::sec_runtime_error::sec_runtime_error ( - error_type num, + error_type num, - const std::string & msg ) + const std::string & msg ) @@ -187,12 +200,12 @@

winstd::sec_runtime_error::sec_runtime_error ( - error_type num, + error_type num, - const char * msg = nullptr ) + const char * msg = nullptr ) @@ -225,7 +238,7 @@

winstd::sec_runtime_error::sec_runtime_error ( - const sec_runtime_error & other) + const sec_runtime_error & other) @@ -252,7 +265,8 @@

+

diff --git a/classwinstd_1_1security__attributes-members.html b/classwinstd_1_1security__attributes-members.html index 79f22a45..2e06e74a 100644 --- a/classwinstd_1_1security__attributes-members.html +++ b/classwinstd_1_1security__attributes-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::security_attributes Member List
@@ -89,7 +102,8 @@
+ diff --git a/classwinstd_1_1security__attributes.html b/classwinstd_1_1security__attributes.html index 95694585..6a5fb54f 100644 --- a/classwinstd_1_1security__attributes.html +++ b/classwinstd_1_1security__attributes.html @@ -3,13 +3,15 @@ - + WinStd: winstd::security_attributes Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -92,11 +105,11 @@

Public Member Functions

security_attributes () noexceptsecurity_attributes () noexcept  Initializes a new SECURITY_ATTRIBUTES.
  security_attributes (security_attributes &&a) noexceptsecurity_attributes (security_attributes &&a) noexcept  Moves an existing SECURITY_ATTRIBUTES.
  @@ -104,7 +117,7 @@  Destroys the SECURITY_ATTRIBUTES.
  -security_attributesoperator= (security_attributes &&a) noexcept +security_attributesoperator= (security_attributes &&a) noexcept  Moves an existing SECURITY_ATTRIBUTES.
  @@ -114,7 +127,8 @@
+
diff --git a/classwinstd_1_1security__id-members.html b/classwinstd_1_1security__id-members.html index 9074d4c1..a8f39df4 100644 --- a/classwinstd_1_1security__id-members.html +++ b/classwinstd_1_1security__id-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + + +
winstd::security_id Member List
@@ -89,7 +102,7 @@ handle() noexceptwinstd::handle< PSID, NULL >inline handle(handle_type h) noexceptwinstd::handle< PSID, NULL >inline handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< PSID, NULL >inline - handle_type typedefwinstd::handle< PSID, NULL > + handle_type typedefwinstd::handle< PSID, NULL > invalidwinstd::handle< PSID, NULL >static m_hwinstd::handle< PSID, NULL >protected operator handle_type() constwinstd::handle< PSID, NULL >inline @@ -109,7 +122,8 @@
+ diff --git a/classwinstd_1_1security__id.html b/classwinstd_1_1security__id.html index 031ce777..c2813204 100644 --- a/classwinstd_1_1security__id.html +++ b/classwinstd_1_1security__id.html @@ -3,13 +3,15 @@ - + WinStd: winstd::security_id Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -100,91 +113,92 @@ - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~security_id ()
virtual ~security_id ()
 Closes a handle to the SID.
 
- Public Member Functions inherited from winstd::handle< PSID, NULL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Closes a handle to the SID.
 
- Protected Member Functions inherited from winstd::handle< PSID, NULL >
- - - + + + +static const PSID  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< PSID, NULL >
-typedef PSID handle_type
 Datatype of the object handle this template class handles.
 
+typedef PSID handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< PSID, NULL >
-static const PSID invalid
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< PSID, NULL >
-handle_type m_h
m_h
 Object handle.
 
@@ -201,9 +215,9 @@

- + - +
virtual winstd::security_id::~security_id virtual winstd::security_id::~security_id ())
@@ -230,9 +244,9 @@

- + - +
void winstd::security_id::free_internal void winstd::security_id::free_internal ())
@@ -256,7 +270,8 @@

+

diff --git a/classwinstd_1_1setup__device__info__list-members.html b/classwinstd_1_1setup__device__info__list-members.html index 41b77266..2e21a5d5 100644 --- a/classwinstd_1_1setup__device__info__list-members.html +++ b/classwinstd_1_1setup__device__info__list-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+ + diff --git a/classwinstd_1_1setup__device__info__list.html b/classwinstd_1_1setup__device__info__list.html index edc965e3..c97d1aff 100644 --- a/classwinstd_1_1setup__device__info__list.html +++ b/classwinstd_1_1setup__device__info__list.html @@ -3,13 +3,15 @@ - + WinStd: winstd::setup_device_info_list Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -100,91 +113,92 @@ - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~setup_device_info_list ()
virtual ~setup_device_info_list ()
 Frees the device information set.
 
- Public Member Functions inherited from winstd::handle< HDEVINFO, INVALID_HANDLE_VALUE >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Frees the device information set.
 
- Protected Member Functions inherited from winstd::handle< HDEVINFO, INVALID_HANDLE_VALUE >
- - - + + + +static const HDEVINFO  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< HDEVINFO, INVALID_HANDLE_VALUE >
-typedef HDEVINFO handle_type
 Datatype of the object handle this template class handles.
 
+typedef HDEVINFO handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< HDEVINFO, INVALID_HANDLE_VALUE >
-static const HDEVINFO invalid
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< HDEVINFO, INVALID_HANDLE_VALUE >
-handle_type m_h
m_h
 Object handle.
 
@@ -204,9 +218,9 @@

- + - +
virtual winstd::setup_device_info_list::~setup_device_info_list virtual winstd::setup_device_info_list::~setup_device_info_list ())
@@ -233,9 +247,9 @@

- + - +
void winstd::setup_device_info_list::free_internal void winstd::setup_device_info_list::free_internal ())
@@ -259,7 +273,8 @@

+

diff --git a/classwinstd_1_1setup__driver__info__list__builder-members.html b/classwinstd_1_1setup__driver__info__list__builder-members.html index 6ca9c861..671ea6ba 100644 --- a/classwinstd_1_1setup__driver__info__list__builder-members.html +++ b/classwinstd_1_1setup__driver__info__list__builder-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::setup_driver_info_list_builder Member List
@@ -88,7 +101,8 @@
+ diff --git a/classwinstd_1_1setup__driver__info__list__builder.html b/classwinstd_1_1setup__driver__info__list__builder.html index e6fbacee..d5035ec3 100644 --- a/classwinstd_1_1setup__driver__info__list__builder.html +++ b/classwinstd_1_1setup__driver__info__list__builder.html @@ -3,13 +3,15 @@ - + WinStd: winstd::setup_driver_info_list_builder Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -90,13 +103,13 @@ - + - + - +

Public Member Functions

 setup_driver_info_list_builder (HDEVINFO DeviceInfoSet, PSP_DEVINFO_DATA DeviceInfoData, DWORD DriverType) noexcept
 setup_driver_info_list_builder (HDEVINFO DeviceInfoSet, PSP_DEVINFO_DATA DeviceInfoData, DWORD DriverType) noexcept
 Construct the builder and builds a list of drivers that is associated with a specific device or with the global class driver list for a device information set.
 
virtual ~setup_driver_info_list_builder ()
virtual ~setup_driver_info_list_builder ()
 Deletes a driver list and destructs the builder.
 
BOOL status () const noexcept
BOOL status () const noexcept
 Return result of SetupDiBuildDriverInfoList() call.
 
@@ -115,17 +128,17 @@

winstd::setup_driver_info_list_builder::setup_driver_info_list_builder ( - HDEVINFO DeviceInfoSet, + HDEVINFO DeviceInfoSet, - PSP_DEVINFO_DATA DeviceInfoData, + PSP_DEVINFO_DATA DeviceInfoData, - DWORD DriverType ) + DWORD DriverType ) @@ -150,9 +163,9 @@

- + - +
virtual winstd::setup_driver_info_list_builder::~setup_driver_info_list_builder virtual winstd::setup_driver_info_list_builder::~setup_driver_info_list_builder ())
@@ -179,9 +192,9 @@

- + - +
BOOL winstd::setup_driver_info_list_builder::status BOOL winstd::setup_driver_info_list_builder::status ()) const
@@ -203,7 +216,8 @@

+

diff --git a/classwinstd_1_1string__guid-members.html b/classwinstd_1_1string__guid-members.html index 68ee8bc4..357065b9 100644 --- a/classwinstd_1_1string__guid-members.html +++ b/classwinstd_1_1string__guid-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::string_guid Member List
@@ -87,7 +100,8 @@
+ diff --git a/classwinstd_1_1string__guid.html b/classwinstd_1_1string__guid.html index 643bb92a..aa284fc9 100644 --- a/classwinstd_1_1string__guid.html +++ b/classwinstd_1_1string__guid.html @@ -3,13 +3,15 @@ - + WinStd: winstd::string_guid Class Reference + + @@ -32,23 +34,33 @@ - + + + +
@@ -99,11 +112,11 @@

Public Member Functions

Initializing string using template in memory
string_guid (const GUID &guid) + string_guid (const GUID &guid)  Initializes a new string and formats its contents to string representation of given GUID.
  - Public Member Functions inherited from winstd::basic_string_guid< char, std::char_traits< char >, std::allocator< char > >basic_string_guid (const GUID &guid, const char *format) + basic_string_guid (const GUID &guid, const char *format)  Initializes a new string and formats its contents to string representation of given GUID.
  @@ -122,7 +135,7 @@

winstd::string_guid::string_guid ( - const GUID & guid) + const GUID & guid) @@ -149,7 +162,8 @@

+

diff --git a/classwinstd_1_1system__impersonator-members.html b/classwinstd_1_1system__impersonator-members.html index 5d150576..ed20fc51 100644 --- a/classwinstd_1_1system__impersonator-members.html +++ b/classwinstd_1_1system__impersonator-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + + +
winstd::system_impersonator Member List
@@ -90,7 +103,8 @@
+ diff --git a/classwinstd_1_1system__impersonator.html b/classwinstd_1_1system__impersonator.html index 9683223e..fc35cbbe 100644 --- a/classwinstd_1_1system__impersonator.html +++ b/classwinstd_1_1system__impersonator.html @@ -3,13 +3,15 @@ - + WinStd: winstd::system_impersonator Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -100,19 +113,19 @@

Public Member Functions

system_impersonator () noexceptsystem_impersonator () noexcept  Construct the impersonator and impersonates the SYSTEM user.
  - Public Member Functions inherited from winstd::impersonatorimpersonator () noexceptimpersonator () noexcept  Construct the impersonator.
  -virtual ~impersonator () +virtual ~impersonator ()  Reverts to current user and destructs the impersonator.
  - operator bool () constoperator bool () const  Did impersonation succeed?
  @@ -120,7 +133,7 @@ Additional Inherited Members +BOOL 
- Protected Attributes inherited from winstd::impersonator
-BOOL m_cookie
m_cookie
 Did impersonation succeed?
 
@@ -132,7 +145,8 @@
+
diff --git a/classwinstd_1_1user__impersonator-members.html b/classwinstd_1_1user__impersonator-members.html index 09d03811..d131e23c 100644 --- a/classwinstd_1_1user__impersonator-members.html +++ b/classwinstd_1_1user__impersonator-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + + +
winstd::user_impersonator Member List
@@ -90,7 +103,8 @@
+ diff --git a/classwinstd_1_1user__impersonator.html b/classwinstd_1_1user__impersonator.html index 3d4da9ef..5b555e96 100644 --- a/classwinstd_1_1user__impersonator.html +++ b/classwinstd_1_1user__impersonator.html @@ -3,13 +3,15 @@ - + WinStd: winstd::user_impersonator Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -99,19 +112,19 @@ - + +  - + + 

Public Member Functions

 user_impersonator (HANDLE hToken) noexcept
 user_impersonator (HANDLE hToken) noexcept
 Construct the impersonator and impersonates the given user.
 
- Public Member Functions inherited from winstd::impersonator
impersonator () noexcept
impersonator () noexcept
 Construct the impersonator.
 
virtual ~impersonator ()
virtual ~impersonator ()
 Reverts to current user and destructs the impersonator.
 
operator bool () const
operator bool () const
 Did impersonation succeed?
 
@@ -119,7 +132,7 @@ Additional Inherited Members +BOOL 
- Protected Attributes inherited from winstd::impersonator
-BOOL m_cookie
m_cookie
 Did impersonation succeed?
 
@@ -138,7 +151,7 @@

winstd::user_impersonator::user_impersonator ( - HANDLE hToken) + HANDLE hToken) @@ -166,7 +179,8 @@

+

diff --git a/classwinstd_1_1variant-members.html b/classwinstd_1_1variant-members.html index 06620f1d..114cbb25 100644 --- a/classwinstd_1_1variant-members.html +++ b/classwinstd_1_1variant-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::variant Member List
@@ -146,7 +159,8 @@
+ diff --git a/classwinstd_1_1variant.html b/classwinstd_1_1variant.html index 79ac7125..fc6dae41 100644 --- a/classwinstd_1_1variant.html +++ b/classwinstd_1_1variant.html @@ -3,13 +3,15 @@ - + WinStd: winstd::variant Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -97,240 +110,240 @@

Public Member Functions

variant () noexceptvariant () noexcept  Constructs blank VARIANT.
  variant (const VARIANT &varSrc) + variant (const VARIANT &varSrc)  Constructs VARIANT from another.
  variant (VARIANT &&varSrc) noexceptvariant (VARIANT &&varSrc) noexcept  Moves VARIANT from another.
  variant (bool bSrc) noexceptvariant (bool bSrc) noexcept  Constructs VARIANT from bool.
  variant (char cSrc) noexceptvariant (char cSrc) noexcept  Constructs VARIANT from character.
  variant (unsigned char nSrc) noexceptvariant (unsigned char nSrc) noexcept  Constructs VARIANT from byte.
  variant (short nSrc) noexceptvariant (short nSrc) noexcept  Constructs VARIANT from short.
  variant (unsigned short nSrc) noexceptvariant (unsigned short nSrc) noexcept  Constructs VARIANT from unsigned short.
  variant (int nSrc, VARTYPE vtSrc=VT_I4) noexceptvariant (int nSrc, VARTYPE vtSrc=VT_I4) noexcept  Constructs VARIANT from integer.
  variant (unsigned int nSrc, VARTYPE vtSrc=VT_UI4) noexceptvariant (unsigned int nSrc, VARTYPE vtSrc=VT_UI4) noexcept  Constructs VARIANT from unsigned integer.
  variant (long nSrc, VARTYPE vtSrc=VT_I4) noexceptvariant (long nSrc, VARTYPE vtSrc=VT_I4) noexcept  Constructs VARIANT from long.
  variant (unsigned long nSrc) noexceptvariant (unsigned long nSrc) noexcept  Constructs VARIANT from unsigned long.
  variant (float fltSrc) noexceptvariant (float fltSrc) noexcept  Constructs VARIANT from float.
  variant (double dblSrc, VARTYPE vtSrc=VT_R8) noexceptvariant (double dblSrc, VARTYPE vtSrc=VT_R8) noexcept  Constructs VARIANT from double or variant date.
  variant (long long nSrc) noexceptvariant (long long nSrc) noexcept  Constructs VARIANT from 64-bit integer.
  variant (unsigned long long nSrc) noexceptvariant (unsigned long long nSrc) noexcept  Constructs VARIANT from unsigned integer.
  variant (CY cySrc) noexceptvariant (CY cySrc) noexcept  Constructs VARIANT from CY (64-bit integer)
  variant (LPCOLESTR lpszSrc) noexceptvariant (LPCOLESTR lpszSrc) noexcept  Constructs VARIANT from OLE string.
  variant (BSTR bstr) noexceptvariant (BSTR bstr) noexcept  Constructs VARIANT from BSTR.
  variant (IDispatch *pSrc) + variant (IDispatch *pSrc)  Constructs VARIANT from IDispatch.
  variant (IUnknown *pSrc) + variant (IUnknown *pSrc)  Constructs VARIANT from IUnknown.
  variant (const SAFEARRAY *pSrc) + variant (const SAFEARRAY *pSrc)  Constructs VARIANT from SAFEARRAY.
  -virtual ~variant () +virtual ~variant ()  Destroys VARIANT.
  -variantoperator= (const VARIANT &varSrc) +variantoperator= (const VARIANT &varSrc)  Copy from another VARIANT.
  -variantoperator= (VARIANT &&varSrc) noexcept +variantoperator= (VARIANT &&varSrc) noexcept  Moves from another VARIANT.
  -variantoperator= (bool bSrc) noexcept +variantoperator= (bool bSrc) noexcept  Copy from bool value.
  -variantoperator= (char cSrc) noexcept +variantoperator= (char cSrc) noexcept  Copy from char value.
  -variantoperator= (unsigned char nSrc) noexcept +variantoperator= (unsigned char nSrc) noexcept  Copy from unsigned char value.
  -variantoperator= (short nSrc) noexcept +variantoperator= (short nSrc) noexcept  Copy from short value.
  -variantoperator= (unsigned short nSrc) noexcept +variantoperator= (unsigned short nSrc) noexcept  Copy from unsigned short value.
  -variantoperator= (int nSrc) noexcept +variantoperator= (int nSrc) noexcept  Copy from int value.
  -variantoperator= (unsigned int nSrc) noexcept +variantoperator= (unsigned int nSrc) noexcept  Copy from unsigned int value.
  -variantoperator= (long nSrc) noexcept +variantoperator= (long nSrc) noexcept  Copy from long value.
  -variantoperator= (unsigned long nSrc) noexcept +variantoperator= (unsigned long nSrc) noexcept  Copy from unsigned long value.
  -variantoperator= (long long nSrc) noexcept +variantoperator= (long long nSrc) noexcept  Copy from long long value.
  -variantoperator= (unsigned long long nSrc) noexcept +variantoperator= (unsigned long long nSrc) noexcept  Copy from unsigned long long value.
  -variantoperator= (float fltSrc) noexcept +variantoperator= (float fltSrc) noexcept  Copy from float value.
  -variantoperator= (double dblSrc) noexcept +variantoperator= (double dblSrc) noexcept  Copy from double value.
  -variantoperator= (CY cySrc) noexcept +variantoperator= (CY cySrc) noexcept  Copy from CY value.
  -variantoperator= (LPCOLESTR lpszSrc) noexcept +variantoperator= (LPCOLESTR lpszSrc) noexcept  Copy from OLE string value.
  -variantoperator= (IDispatch *pSrc) +variantoperator= (IDispatch *pSrc)  Copy from IDispatch.
  -variantoperator= (IUnknown *pSrc) +variantoperator= (IUnknown *pSrc)  Copy from IUnknown.
  -variantoperator= (unsigned char *pbSrc) noexcept +variantoperator= (unsigned char *pbSrc) noexcept  Copy from unsigned char reference.
  -variantoperator= (short *pnSrc) noexcept +variantoperator= (short *pnSrc) noexcept  Copy from short reference.
  -variantoperator= (unsigned short *pnSrc) noexcept +variantoperator= (unsigned short *pnSrc) noexcept  Copy from unsigned short reference.
  -variantoperator= (int *pnSrc) noexcept +variantoperator= (int *pnSrc) noexcept  Copy from int reference.
  -variantoperator= (unsigned int *pnSrc) noexcept +variantoperator= (unsigned int *pnSrc) noexcept  Copy from unsigned int reference.
  -variantoperator= (long *pnSrc) noexcept +variantoperator= (long *pnSrc) noexcept  Copy from long reference.
  -variantoperator= (unsigned long *pnSrc) noexcept +variantoperator= (unsigned long *pnSrc) noexcept  Copy from unsigned long reference.
  -variantoperator= (long long *pnSrc) noexcept +variantoperator= (long long *pnSrc) noexcept  Copy from long long reference.
  -variantoperator= (unsigned long long *pnSrc) noexcept +variantoperator= (unsigned long long *pnSrc) noexcept  Copy from unsigned long long reference.
  -variantoperator= (float *pfSrc) noexcept +variantoperator= (float *pfSrc) noexcept  Copy from float reference.
  -variantoperator= (double *pfSrc) noexcept +variantoperator= (double *pfSrc) noexcept  Copy from double reference.
  -variantoperator= (const SAFEARRAY *pSrc) +variantoperator= (const SAFEARRAY *pSrc)  Copy from SAFEARRAY.
  -bool operator== (const VARIANT &varSrc) const noexcept +bool operator== (const VARIANT &varSrc) const noexcept  Is variant equal to?
  -bool operator!= (const VARIANT &varSrc) const noexcept +bool operator!= (const VARIANT &varSrc) const noexcept  Is variant not equal to?
  -bool operator< (const VARIANT &varSrc) const noexcept +bool operator< (const VARIANT &varSrc) const noexcept  Is variant less than?
  -bool operator> (const VARIANT &varSrc) const noexcept +bool operator> (const VARIANT &varSrc) const noexcept  Is variant greater than?
  -bool operator<= (const VARIANT &varSrc) const noexcept +bool operator<= (const VARIANT &varSrc) const noexcept  Is variant less than or equal to?
  -bool operator>= (const VARIANT &varSrc) const noexcept +bool operator>= (const VARIANT &varSrc) const noexcept  Is variant greater than or equal to?
  -HRESULT change_type (VARTYPE _vt, USHORT wFlags=0) noexcept +HRESULT change_type (VARTYPE _vt, USHORT wFlags=0) noexcept  Converts a variant from one type to another.
  @@ -347,14 +360,14 @@

- + - + - +
HRESULT winstd::variant::change_type HRESULT winstd::variant::change_type (VARTYPE _vt, VARTYPE _vt,
USHORT wFlags = 0 )USHORT wFlags = 0 )
@@ -379,9 +392,9 @@

- + - +
bool winstd::variant::operator!= bool winstd::variant::operator!= (const VARIANT & varSrc)const VARIANT & varSrc) const
@@ -417,9 +430,9 @@

- + - +
bool winstd::variant::operator< bool winstd::variant::operator< (const VARIANT & varSrc)const VARIANT & varSrc) const
@@ -455,9 +468,9 @@

- + - +
bool winstd::variant::operator<= bool winstd::variant::operator<= (const VARIANT & varSrc)const VARIANT & varSrc) const
@@ -493,9 +506,9 @@

- + - +
bool winstd::variant::operator== bool winstd::variant::operator== (const VARIANT & varSrc)const VARIANT & varSrc) const
@@ -531,9 +544,9 @@

- + - +
bool winstd::variant::operator> bool winstd::variant::operator> (const VARIANT & varSrc)const VARIANT & varSrc) const
@@ -569,9 +582,9 @@

- + - +
bool winstd::variant::operator>= bool winstd::variant::operator>= (const VARIANT & varSrc)const VARIANT & varSrc) const
@@ -603,7 +616,8 @@

+

diff --git a/classwinstd_1_1vmemory-members.html b/classwinstd_1_1vmemory-members.html index 5eefe17b..d1d3bc19 100644 --- a/classwinstd_1_1vmemory-members.html +++ b/classwinstd_1_1vmemory-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::vmemory Member List
@@ -84,14 +97,14 @@ - + - + @@ -104,8 +117,8 @@ - - + + @@ -116,7 +129,8 @@
alloc(HANDLE hProcess, LPVOID lpAddress, SIZE_T dwSize, DWORD flAllocationType, DWORD flProtect) noexceptwinstd::vmemoryinline
attach(HANDLE proc, handle_type h) noexceptwinstd::vmemoryinline
handle< LPVOID, NULL >::attach(handle_type h) noexceptwinstd::handle< LPVOID, NULL >inline
winstd::handle< LPVOID, NULL >::attach(handle_type h) noexceptwinstd::handle< LPVOID, NULL >inline
detach()winstd::handle< LPVOID, NULL >inline
free()winstd::handle< LPVOID, NULL >inline
free_internal() noexcept overridewinstd::vmemoryinlineprotectedvirtual
handle() noexceptwinstd::handle< LPVOID, NULL >inline
handle(handle_type h) noexceptwinstd::handle< LPVOID, NULL >inline
handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< LPVOID, NULL >inline
handle_type typedefwinstd::handle< LPVOID, NULL >
handle_type typedefwinstd::handle< LPVOID, NULL >
invalidwinstd::handle< LPVOID, NULL >static
m_hwinstd::handle< LPVOID, NULL >protected
m_procwinstd::vmemoryprotected
operator<(handle_type h) constwinstd::handle< LPVOID, NULL >inline
operator<=(handle_type h) constwinstd::handle< LPVOID, NULL >inline
operator=(vmemory &&other) noexceptwinstd::vmemoryinline
handle< LPVOID, NULL >::operator=(handle_type h) noexceptwinstd::handle< LPVOID, NULL >inline
handle< LPVOID, NULL >::operator=(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< LPVOID, NULL >inline
winstd::handle< LPVOID, NULL >::operator=(handle_type h) noexceptwinstd::handle< LPVOID, NULL >inline
winstd::handle< LPVOID, NULL >::operator=(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< LPVOID, NULL >inline
operator==(handle_type h) constwinstd::handle< LPVOID, NULL >inline
operator>(handle_type h) constwinstd::handle< LPVOID, NULL >inline
operator>=(handle_type h) constwinstd::handle< LPVOID, NULL >inline
+ diff --git a/classwinstd_1_1vmemory.html b/classwinstd_1_1vmemory.html index 9efa4bc6..04dad360 100644 --- a/classwinstd_1_1vmemory.html +++ b/classwinstd_1_1vmemory.html @@ -3,13 +3,15 @@ - + WinStd: winstd::vmemory Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -102,116 +115,117 @@

Public Member Functions

vmemory () noexceptvmemory () noexcept  Initializes a new class instance with the memory handle set to INVAL.
  - vmemory (handle_type h, HANDLE proc) noexceptvmemory (handle_type h, HANDLE proc) noexcept  Initializes a new class instance with an already available object handle.
  - vmemory (vmemory &&h) noexceptvmemory (vmemory &&h) noexcept  Move constructor.
  -virtual ~vmemory () +virtual ~vmemory ()  Frees the memory.
  -vmemoryoperator= (vmemory &&other) noexcept +vmemoryoperator= (vmemory &&other) noexcept  Move assignment.
  -void attach (HANDLE proc, handle_type h) noexcept +void attach (HANDLE proc, handle_type h) noexcept  Sets a new memory handle for the class.
  -bool alloc (HANDLE hProcess, LPVOID lpAddress, SIZE_T dwSize, DWORD flAllocationType, DWORD flProtect) noexcept +bool alloc (HANDLE hProcess, LPVOID lpAddress, SIZE_T dwSize, DWORD flAllocationType, DWORD flProtect) noexcept  Reserves, commits, or changes the state of a region of memory within the virtual address space of a specified process. The function initializes the memory it allocates to zero.
  - Public Member Functions inherited from winstd::handle< LPVOID, NULL >handle () noexcepthandle () noexcept  Initializes a new class instance with the object handle set to INVAL.
  - handle (handle_type h) noexcepthandle (handle_type h) noexcept  Initializes a new class instance with an already available object handle.
  - handle (handle< handle_type, INVAL > &&h) noexcepthandle (handle< handle_type, INVAL > &&h) noexcept  Move constructor.
  -handle< handle_type, INVAL > & operator= (handle_type h) noexcept +handle< handle_type, INVAL > & operator= (handle_type h) noexcept  Attaches already available object handle.
  -handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept +handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept  Move assignment.
  - operator handle_type () constoperator handle_type () const  Auto-typecasting operator.
  -handle_type *& operator* () const +handle_type *& operator* () const  Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
  -handle_typeoperator& () +handle_typeoperator& ()  Returns the object handle reference.
  -handle_type operator-> () const +handle_type operator-> () const  Provides object handle member access when the object handle is a pointer to a class or struct.
  -bool operator! () const +bool operator! () const  Tests if the object handle is invalid.
  -bool operator< (handle_type h) const +bool operator< (handle_type h) const  Is handle less than?
  -bool operator<= (handle_type h) const +bool operator<= (handle_type h) const  Is handle less than or equal to?
  -bool operator>= (handle_type h) const +bool operator>= (handle_type h) const  Is handle greater than or equal to?
  -bool operator> (handle_type h) const +bool operator> (handle_type h) const  Is handle greater than?
  -bool operator!= (handle_type h) const +bool operator!= (handle_type h) const  Is handle not equal to?
  -bool operator== (handle_type h) const +bool operator== (handle_type h) const  Is handle equal to?
  -void attach (handle_type h) noexcept +void attach (handle_type h) noexcept  Sets a new object handle for the class.
  -handle_type detach () +handle_type detach ()  Dismisses the object handle from this class.
  -void free () +void free ()  Destroys the object.
  - + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Frees the memory.
 
- Protected Member Functions inherited from winstd::handle< LPVOID, NULL >
+HANDLE  +handle_type 

Protected Attributes

-HANDLE m_proc
m_proc
 Handle of memory's process.
 
- Protected Attributes inherited from winstd::handle< LPVOID, NULL >
-handle_type m_h
m_h
 Object handle.
 
- - - + + + +static const LPVOID 

Additional Inherited Members

- Public Types inherited from winstd::handle< LPVOID, NULL >
-typedef LPVOID handle_type
 Datatype of the object handle this template class handles.
 
+typedef LPVOID handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< LPVOID, NULL >
-static const LPVOID invalid
invalid
 Invalid handle value.
 
@@ -230,12 +244,12 @@

winstd::vmemory::vmemory ( - handle_type h, + handle_type h, - HANDLE proc ) + HANDLE proc ) @@ -299,9 +313,9 @@

- + - +
virtual winstd::vmemory::~vmemory virtual winstd::vmemory::~vmemory ())
@@ -328,29 +342,29 @@

- + - + - + - + - + - +
bool winstd::vmemory::alloc bool winstd::vmemory::alloc (HANDLE hProcess, HANDLE hProcess,
LPVOID lpAddress, LPVOID lpAddress,
SIZE_T dwSize, SIZE_T dwSize,
DWORD flAllocationType, DWORD flAllocationType,
DWORD flProtect )DWORD flProtect )
@@ -380,14 +394,14 @@

- + - + - +
void winstd::vmemory::attach void winstd::vmemory::attach (HANDLE proc, HANDLE proc,
handle_type h )handle_type h )
@@ -419,9 +433,9 @@

- + - +
void winstd::vmemory::free_internal void winstd::vmemory::free_internal ())
@@ -478,7 +492,8 @@

+

diff --git a/classwinstd_1_1waddrinfo-members.html b/classwinstd_1_1waddrinfo-members.html index 7adf21c3..837dc7d6 100644 --- a/classwinstd_1_1waddrinfo-members.html +++ b/classwinstd_1_1waddrinfo-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+ + diff --git a/classwinstd_1_1waddrinfo.html b/classwinstd_1_1waddrinfo.html index 46eef72d..967c0017 100644 --- a/classwinstd_1_1waddrinfo.html +++ b/classwinstd_1_1waddrinfo.html @@ -3,13 +3,15 @@ - + WinStd: winstd::waddrinfo Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -100,91 +113,92 @@ - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~waddrinfo ()
virtual ~waddrinfo ()
 Frees address information.
 
- Public Member Functions inherited from winstd::handle< PADDRINFOW, NULL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Frees address information.
 
- Protected Member Functions inherited from winstd::handle< PADDRINFOW, NULL >
- - - + + + +static const PADDRINFOW  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< PADDRINFOW, NULL >
-typedef PADDRINFOW handle_type
 Datatype of the object handle this template class handles.
 
+typedef PADDRINFOW handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< PADDRINFOW, NULL >
-static const PADDRINFOW invalid
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< PADDRINFOW, NULL >
-handle_type m_h
m_h
 Object handle.
 
@@ -202,9 +216,9 @@

- + - +
virtual winstd::waddrinfo::~waddrinfo virtual winstd::waddrinfo::~waddrinfo ())
@@ -231,9 +245,9 @@

- + - +
void winstd::waddrinfo::free_internal void winstd::waddrinfo::free_internal ())
@@ -257,7 +271,8 @@

+

diff --git a/classwinstd_1_1win__handle-members.html b/classwinstd_1_1win__handle-members.html index 26200444..172bc3b4 100644 --- a/classwinstd_1_1win__handle-members.html +++ b/classwinstd_1_1win__handle-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::win_handle< INVALID > Member List
@@ -89,7 +102,7 @@ handle() noexceptwinstd::handle< HANDLE, INVALID >inline handle(handle_type h) noexceptwinstd::handle< HANDLE, INVALID >inline handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< HANDLE, INVALID >inline - handle_type typedefwinstd::handle< HANDLE, INVALID > + handle_type typedefwinstd::handle< HANDLE, INVALID > invalidwinstd::handle< HANDLE, INVALID >static m_hwinstd::handle< HANDLE, INVALID >protected operator handle_type() constwinstd::handle< HANDLE, INVALID >inline @@ -109,7 +122,8 @@
+ diff --git a/classwinstd_1_1win__handle.html b/classwinstd_1_1win__handle.html index 742399e0..46d83d72 100644 --- a/classwinstd_1_1win__handle.html +++ b/classwinstd_1_1win__handle.html @@ -3,13 +3,15 @@ - + WinStd: winstd::win_handle< INVALID > Class Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -100,96 +113,97 @@ - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~win_handle ()
virtual ~win_handle ()
 Closes an open object handle.
 
- Public Member Functions inherited from winstd::handle< HANDLE, INVALID >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Closes an open object handle.
 
- Protected Member Functions inherited from winstd::handle< HANDLE, INVALID >
- - - + + + +static const HANDLE  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< HANDLE, INVALID >
-typedef HANDLE handle_type
 Datatype of the object handle this template class handles.
 
+typedef HANDLE handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< HANDLE, INVALID >
-static const HANDLE invalid
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< HANDLE, INVALID >
-handle_type m_h
m_h
 Object handle.
 

Detailed Description

-
template<HANDLE INVALID>
+
template<HANDLE INVALID>
class winstd::win_handle< INVALID >

Windows HANDLE wrapper class.

Constructor & Destructor Documentation

@@ -198,15 +212,15 @@

+template<HANDLE INVALID>
- + - +
virtual winstd::win_handle< INVALID >::~win_handle virtual winstd::win_handle< INVALID >::~win_handle ())
@@ -229,15 +243,15 @@

+template<HANDLE INVALID>
- + - +
void winstd::win_handle< INVALID >::free_internal void winstd::win_handle< INVALID >::free_internal ())
@@ -261,7 +275,8 @@

+ diff --git a/classwinstd_1_1win__runtime__error-members.html b/classwinstd_1_1win__runtime__error-members.html index 3ca8c7de..3c99c348 100644 --- a/classwinstd_1_1win__runtime__error-members.html +++ b/classwinstd_1_1win__runtime__error-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + + +
winstd::win_runtime_error Member List
@@ -82,7 +95,7 @@

This is the complete list of members for winstd::win_runtime_error, including all inherited members.

- + @@ -97,7 +110,8 @@
error_type typedefwinstd::num_runtime_error< DWORD >
error_type typedefwinstd::num_runtime_error< DWORD >
m_numwinstd::num_runtime_error< DWORD >protected
message(error_type num, DWORD dwLanguageId=0)winstd::win_runtime_errorinlineprotectedstatic
num_runtime_error(error_type num, const std::string &msg)winstd::num_runtime_error< DWORD >inline
+ diff --git a/classwinstd_1_1win__runtime__error.html b/classwinstd_1_1win__runtime__error.html index 23488011..688f05d7 100644 --- a/classwinstd_1_1win__runtime__error.html +++ b/classwinstd_1_1win__runtime__error.html @@ -3,13 +3,15 @@ - + WinStd: winstd::win_runtime_error Class Reference + + @@ -32,23 +34,33 @@

- + + +
+
Public Member Functions | @@ -101,53 +114,53 @@ - + - + - + - + - + - + - + +error_type 

Public Member Functions

 win_runtime_error (error_type num)
 win_runtime_error (error_type num)
 Constructs an exception.
 
 win_runtime_error (error_type num, const std::string &msg)
 win_runtime_error (error_type num, const std::string &msg)
 Constructs an exception.
 
 win_runtime_error (error_type num, const char *msg)
 win_runtime_error (error_type num, const char *msg)
 Constructs an exception.
 
 win_runtime_error ()
 Constructs an exception using GetLastError()
 
 win_runtime_error (const std::string &msg)
 win_runtime_error (const std::string &msg)
 Constructs an exception using GetLastError()
 
 win_runtime_error (const char *msg)
 win_runtime_error (const char *msg)
 Constructs an exception using GetLastError()
 
- Public Member Functions inherited from winstd::num_runtime_error< DWORD >
 num_runtime_error (error_type num, const std::string &msg)
 num_runtime_error (error_type num, const std::string &msg)
 Constructs an exception.
 
 num_runtime_error (error_type num, const char *msg=nullptr)
 num_runtime_error (error_type num, const char *msg=nullptr)
 Constructs an exception.
 
-error_type number () const
number () const
 Returns the error number.
 
- +

Static Protected Member Functions

static std::string message (error_type num, DWORD dwLanguageId=0)
static std::string message (error_type num, DWORD dwLanguageId=0)
 Returns a user-readable Windows error message. As std::exception messages may only be char*, we use UTF-8 by convention.
 
- - - + + + +error_type 

Additional Inherited Members

- Public Types inherited from winstd::num_runtime_error< DWORD >
-typedef DWORD error_type
 Error number type.
 
+typedef DWORD error_type
 Error number type.
 
- Protected Attributes inherited from winstd::num_runtime_error< DWORD >
-error_type m_num
m_num
 Numeric error code.
 
@@ -166,7 +179,7 @@

winstd::win_runtime_error::win_runtime_error ( - error_type num) + error_type num) @@ -199,12 +212,12 @@

winstd::win_runtime_error::win_runtime_error ( - error_type num, + error_type num, - const std::string & msg ) + const std::string & msg ) @@ -237,12 +250,12 @@

winstd::win_runtime_error::win_runtime_error ( - error_type num, + error_type num, - const char * msg ) + const char * msg ) @@ -275,7 +288,7 @@

winstd::win_runtime_error::win_runtime_error ( - const std::string & msg) + const std::string & msg) @@ -308,7 +321,7 @@

winstd::win_runtime_error::win_runtime_error ( - const char * msg) + const char * msg) @@ -340,14 +353,14 @@

- + - + - +
static std::string winstd::win_runtime_error::message static std::string winstd::win_runtime_error::message (error_type num, error_type num,
DWORD dwLanguageId = 0 )DWORD dwLanguageId = 0 )
@@ -368,7 +381,8 @@

+

diff --git a/classwinstd_1_1window__dc-members.html b/classwinstd_1_1window__dc-members.html index 1e96485f..51379324 100644 --- a/classwinstd_1_1window__dc-members.html +++ b/classwinstd_1_1window__dc-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::window_dc Member List
@@ -89,7 +102,7 @@ handle() noexceptwinstd::handle< HDC, NULL >inline handle(handle_type h) noexceptwinstd::handle< HDC, NULL >inline handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< HDC, NULL >inline - handle_type typedefwinstd::handle< HDC, NULL > + handle_type typedefwinstd::handle< HDC, NULL > invalidwinstd::handle< HDC, NULL >static m_hwinstd::handle< HDC, NULL >protected m_hwndwinstd::window_dcprotected @@ -102,8 +115,8 @@ operator<(handle_type h) constwinstd::handle< HDC, NULL >inline operator<=(handle_type h) constwinstd::handle< HDC, NULL >inline operator=(window_dc &&h) noexceptwinstd::window_dcinline - handle< HDC, NULL >::operator=(handle_type h) noexceptwinstd::handle< HDC, NULL >inline - handle< HDC, NULL >::operator=(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< HDC, NULL >inline + winstd::handle< HDC, NULL >::operator=(handle_type h) noexceptwinstd::handle< HDC, NULL >inline + winstd::handle< HDC, NULL >::operator=(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< HDC, NULL >inline operator==(handle_type h) constwinstd::handle< HDC, NULL >inline operator>(handle_type h) constwinstd::handle< HDC, NULL >inline operator>=(handle_type h) constwinstd::handle< HDC, NULL >inline @@ -114,7 +127,8 @@
+
diff --git a/classwinstd_1_1window__dc.html b/classwinstd_1_1window__dc.html index dd924a75..2fafb3d3 100644 --- a/classwinstd_1_1window__dc.html +++ b/classwinstd_1_1window__dc.html @@ -3,13 +3,15 @@ - + WinStd: winstd::window_dc Class Reference + + @@ -32,23 +34,33 @@
- + + +
+
Public Member Functions | @@ -102,113 +115,114 @@

Public Member Functions

window_dc () noexceptwindow_dc () noexcept  Initializes an empty device context.
  window_dc (handle_type h, HWND hwnd) noexceptwindow_dc (handle_type h, HWND hwnd) noexcept  Initializes a device context from existing data.
  window_dc (window_dc &&h) noexceptwindow_dc (window_dc &&h) noexcept  Move an existing device context.
  -window_dcoperator= (window_dc &&h) noexcept +window_dcoperator= (window_dc &&h) noexcept  Copy an existing device context.
  -virtual ~window_dc () +virtual ~window_dc ()  Releases a device context (DC), freeing it for use by other applications.
  - Public Member Functions inherited from winstd::handle< HDC, NULL >handle () noexcepthandle () noexcept  Initializes a new class instance with the object handle set to INVAL.
  - handle (handle_type h) noexcepthandle (handle_type h) noexcept  Initializes a new class instance with an already available object handle.
  - handle (handle< handle_type, INVAL > &&h) noexcepthandle (handle< handle_type, INVAL > &&h) noexcept  Move constructor.
  -handle< handle_type, INVAL > & operator= (handle_type h) noexcept +handle< handle_type, INVAL > & operator= (handle_type h) noexcept  Attaches already available object handle.
  -handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept +handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept  Move assignment.
  - operator handle_type () constoperator handle_type () const  Auto-typecasting operator.
  -handle_type *& operator* () const +handle_type *& operator* () const  Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
  -handle_typeoperator& () +handle_typeoperator& ()  Returns the object handle reference.
  -handle_type operator-> () const +handle_type operator-> () const  Provides object handle member access when the object handle is a pointer to a class or struct.
  -bool operator! () const +bool operator! () const  Tests if the object handle is invalid.
  -bool operator< (handle_type h) const +bool operator< (handle_type h) const  Is handle less than?
  -bool operator<= (handle_type h) const +bool operator<= (handle_type h) const  Is handle less than or equal to?
  -bool operator>= (handle_type h) const +bool operator>= (handle_type h) const  Is handle greater than or equal to?
  -bool operator> (handle_type h) const +bool operator> (handle_type h) const  Is handle greater than?
  -bool operator!= (handle_type h) const +bool operator!= (handle_type h) const  Is handle not equal to?
  -bool operator== (handle_type h) const +bool operator== (handle_type h) const  Is handle equal to?
  -void attach (handle_type h) noexcept +void attach (handle_type h) noexcept  Sets a new object handle for the class.
  -handle_type detach () +handle_type detach ()  Dismisses the object handle from this class.
  -void free () +void free ()  Destroys the object.
  - + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Releases a device context (DC), freeing it for use by other applications.
 
- Protected Member Functions inherited from winstd::handle< HDC, NULL >
+HWND  +handle_type 

Protected Attributes

-HWND m_hwnd
m_hwnd
 Window handle.
 
- Protected Attributes inherited from winstd::handle< HDC, NULL >
-handle_type m_h
m_h
 Object handle.
 
- - - + + + +static const HDC 

Additional Inherited Members

- Public Types inherited from winstd::handle< HDC, NULL >
-typedef HDC handle_type
 Datatype of the object handle this template class handles.
 
+typedef HDC handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< HDC, NULL >
-static const HDC invalid
invalid
 Invalid handle value.
 
@@ -225,9 +239,9 @@

- + - +
virtual winstd::window_dc::~window_dc virtual winstd::window_dc::~window_dc ())
@@ -254,9 +268,9 @@

- + - +
void winstd::window_dc::free_internal void winstd::window_dc::free_internal ())
@@ -280,7 +294,8 @@

+

diff --git a/classwinstd_1_1wintrust-members.html b/classwinstd_1_1wintrust-members.html index 4090decf..feb3b796 100644 --- a/classwinstd_1_1wintrust-members.html +++ b/classwinstd_1_1wintrust-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::wintrust Member List
@@ -87,7 +100,8 @@
+ diff --git a/classwinstd_1_1wintrust.html b/classwinstd_1_1wintrust.html index eb16440f..2c6344e1 100644 --- a/classwinstd_1_1wintrust.html +++ b/classwinstd_1_1wintrust.html @@ -3,13 +3,15 @@ - + WinStd: winstd::wintrust Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -91,11 +104,11 @@

Public Member Functions

wintrust (HWND hwnd, const GUID &action, WINTRUST_DATA &wtd) + wintrust (HWND hwnd, const GUID &action, WINTRUST_DATA &wtd)  Initializes a new class instance.
  -virtual ~wintrust () +virtual ~wintrust ()  Destroys the WinTrust context.
  @@ -107,7 +120,8 @@
+
diff --git a/classwinstd_1_1wlan__handle-members.html b/classwinstd_1_1wlan__handle-members.html index d5259053..b3cddf2a 100644 --- a/classwinstd_1_1wlan__handle-members.html +++ b/classwinstd_1_1wlan__handle-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + + +
winstd::wlan_handle Member List
@@ -89,7 +102,7 @@ handle() noexceptwinstd::handle< HANDLE, NULL >inline handle(handle_type h) noexceptwinstd::handle< HANDLE, NULL >inline handle(handle< handle_type, INVAL > &&h) noexceptwinstd::handle< HANDLE, NULL >inline - handle_type typedefwinstd::handle< HANDLE, NULL > + handle_type typedefwinstd::handle< HANDLE, NULL > invalidwinstd::handle< HANDLE, NULL >static m_hwinstd::handle< HANDLE, NULL >protected operator handle_type() constwinstd::handle< HANDLE, NULL >inline @@ -109,7 +122,8 @@
+ diff --git a/classwinstd_1_1wlan__handle.html b/classwinstd_1_1wlan__handle.html index 896e808b..94b06f9a 100644 --- a/classwinstd_1_1wlan__handle.html +++ b/classwinstd_1_1wlan__handle.html @@ -3,13 +3,15 @@ - + WinStd: winstd::wlan_handle Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -100,91 +113,92 @@ - + +  - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +void 

Public Member Functions

virtual ~wlan_handle ()
virtual ~wlan_handle ()
 Closes a connection to the server.
 
- Public Member Functions inherited from winstd::handle< HANDLE, NULL >
handle () noexcept
handle () noexcept
 Initializes a new class instance with the object handle set to INVAL.
 
 handle (handle_type h) noexcept
 handle (handle_type h) noexcept
 Initializes a new class instance with an already available object handle.
 
 handle (handle< handle_type, INVAL > &&h) noexcept
 handle (handle< handle_type, INVAL > &&h) noexcept
 Move constructor.
 
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
handle< handle_type, INVAL > & operator= (handle_type h) noexcept
 Attaches already available object handle.
 
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
handle< handle_type, INVAL > & operator= (handle< handle_type, INVAL > &&h) noexcept
 Move assignment.
 
 operator handle_type () const
 operator handle_type () const
 Auto-typecasting operator.
 
handle_type *& operator* () const
handle_type *& operator* () const
 Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.).
 
handle_typeoperator& ()
handle_typeoperator& ()
 Returns the object handle reference.
 
handle_type operator-> () const
handle_type operator-> () const
 Provides object handle member access when the object handle is a pointer to a class or struct.
 
bool operator! () const
bool operator! () const
 Tests if the object handle is invalid.
 
bool operator< (handle_type h) const
bool operator< (handle_type h) const
 Is handle less than?
 
bool operator<= (handle_type h) const
bool operator<= (handle_type h) const
 Is handle less than or equal to?
 
bool operator>= (handle_type h) const
bool operator>= (handle_type h) const
 Is handle greater than or equal to?
 
bool operator> (handle_type h) const
bool operator> (handle_type h) const
 Is handle greater than?
 
bool operator!= (handle_type h) const
bool operator!= (handle_type h) const
 Is handle not equal to?
 
bool operator== (handle_type h) const
bool operator== (handle_type h) const
 Is handle equal to?
 
void attach (handle_type h) noexcept
void attach (handle_type h) noexcept
 Sets a new object handle for the class.
 
handle_type detach ()
handle_type detach ()
 Dismisses the object handle from this class.
 
-void free ()
free ()
 Destroys the object.
 
- + +

Protected Member Functions

void free_internal () noexcept override
void free_internal () noexcept override
 Closes a connection to the server.
 
- Protected Member Functions inherited from winstd::handle< HANDLE, NULL >
- - - + + + +static const HANDLE  +handle_type 

Additional Inherited Members

- Public Types inherited from winstd::handle< HANDLE, NULL >
-typedef HANDLE handle_type
 Datatype of the object handle this template class handles.
 
+typedef HANDLE handle_type
 Datatype of the object handle this template class handles.
 
- Static Public Attributes inherited from winstd::handle< HANDLE, NULL >
-static const HANDLE invalid
invalid
 Invalid handle value.
 
- Protected Attributes inherited from winstd::handle< HANDLE, NULL >
-handle_type m_h
m_h
 Object handle.
 
@@ -202,9 +216,9 @@

- + - +
virtual winstd::wlan_handle::~wlan_handle virtual winstd::wlan_handle::~wlan_handle ())
@@ -231,9 +245,9 @@

- + - +
void winstd::wlan_handle::free_internal void winstd::wlan_handle::free_internal ())
@@ -257,7 +271,8 @@

+

diff --git a/classwinstd_1_1ws2__runtime__error-members.html b/classwinstd_1_1ws2__runtime__error-members.html index e343fed2..1dc04a84 100644 --- a/classwinstd_1_1ws2__runtime__error-members.html +++ b/classwinstd_1_1ws2__runtime__error-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::ws2_runtime_error Member List
@@ -82,7 +95,7 @@

This is the complete list of members for winstd::ws2_runtime_error, including all inherited members.

- + @@ -97,7 +110,8 @@
error_type typedefwinstd::num_runtime_error< int >
error_type typedefwinstd::num_runtime_error< int >
m_numwinstd::num_runtime_error< int >protected
message(error_type num, DWORD dwLanguageId=0)winstd::ws2_runtime_errorinlineprotectedstatic
num_runtime_error(error_type num, const std::string &msg)winstd::num_runtime_error< int >inline
+ diff --git a/classwinstd_1_1ws2__runtime__error.html b/classwinstd_1_1ws2__runtime__error.html index 65cc643e..e157f3a1 100644 --- a/classwinstd_1_1ws2__runtime__error.html +++ b/classwinstd_1_1ws2__runtime__error.html @@ -3,13 +3,15 @@ - + WinStd: winstd::ws2_runtime_error Class Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -100,53 +113,53 @@ - + - + - + - + - + - + - + +error_type 

Public Member Functions

 ws2_runtime_error (error_type num)
 ws2_runtime_error (error_type num)
 Constructs an exception.
 
 ws2_runtime_error (error_type num, const std::string &msg)
 ws2_runtime_error (error_type num, const std::string &msg)
 Constructs an exception.
 
 ws2_runtime_error (error_type num, const char *msg)
 ws2_runtime_error (error_type num, const char *msg)
 Constructs an exception.
 
 ws2_runtime_error ()
 Constructs an exception using WSAGetLastError()
 
 ws2_runtime_error (const std::string &msg)
 ws2_runtime_error (const std::string &msg)
 Constructs an exception using WSAGetLastError()
 
 ws2_runtime_error (const char *msg)
 ws2_runtime_error (const char *msg)
 Constructs an exception using WSAGetLastError()
 
- Public Member Functions inherited from winstd::num_runtime_error< int >
 num_runtime_error (error_type num, const std::string &msg)
 num_runtime_error (error_type num, const std::string &msg)
 Constructs an exception.
 
 num_runtime_error (error_type num, const char *msg=nullptr)
 num_runtime_error (error_type num, const char *msg=nullptr)
 Constructs an exception.
 
-error_type number () const
number () const
 Returns the error number.
 
- +

Static Protected Member Functions

static std::string message (error_type num, DWORD dwLanguageId=0)
static std::string message (error_type num, DWORD dwLanguageId=0)
 Returns a user-readable Windows error message.
 
- - - + + + +error_type 

Additional Inherited Members

- Public Types inherited from winstd::num_runtime_error< int >
-typedef int error_type
 Error number type.
 
+typedef int error_type
 Error number type.
 
- Protected Attributes inherited from winstd::num_runtime_error< int >
-error_type m_num
m_num
 Numeric error code.
 
@@ -165,7 +178,7 @@

winstd::ws2_runtime_error::ws2_runtime_error ( - error_type num) + error_type num) @@ -198,12 +211,12 @@

winstd::ws2_runtime_error::ws2_runtime_error ( - error_type num, + error_type num, - const std::string & msg ) + const std::string & msg ) @@ -236,12 +249,12 @@

winstd::ws2_runtime_error::ws2_runtime_error ( - error_type num, + error_type num, - const char * msg ) + const char * msg ) @@ -274,7 +287,7 @@

winstd::ws2_runtime_error::ws2_runtime_error ( - const std::string & msg) + const std::string & msg) @@ -307,7 +320,7 @@

winstd::ws2_runtime_error::ws2_runtime_error ( - const char * msg) + const char * msg) @@ -339,14 +352,14 @@

- + - + - +
static std::string winstd::ws2_runtime_error::message static std::string winstd::ws2_runtime_error::message (error_type num, error_type num,
DWORD dwLanguageId = 0 )DWORD dwLanguageId = 0 )
@@ -367,7 +380,8 @@

+

diff --git a/classwinstd_1_1wstring__guid-members.html b/classwinstd_1_1wstring__guid-members.html index a2536ed5..4e80a06d 100644 --- a/classwinstd_1_1wstring__guid-members.html +++ b/classwinstd_1_1wstring__guid-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::wstring_guid Member List
@@ -87,7 +100,8 @@
+ diff --git a/classwinstd_1_1wstring__guid.html b/classwinstd_1_1wstring__guid.html index 00f53f6a..1c755329 100644 --- a/classwinstd_1_1wstring__guid.html +++ b/classwinstd_1_1wstring__guid.html @@ -3,13 +3,15 @@ - + WinStd: winstd::wstring_guid Class Reference + + @@ -32,23 +34,33 @@ - + + + +
@@ -99,11 +112,11 @@

Public Member Functions

Initializing string using template in memory
wstring_guid (const GUID &guid) + wstring_guid (const GUID &guid)  Initializes a new string and formats its contents to string representation of given GUID.
  - Public Member Functions inherited from winstd::basic_string_guid< wchar_t, std::char_traits< wchar_t >, std::allocator< wchar_t > >basic_string_guid (const GUID &guid, const wchar_t *format) + basic_string_guid (const GUID &guid, const wchar_t *format)  Initializes a new string and formats its contents to string representation of given GUID.
  @@ -122,7 +135,7 @@

winstd::wstring_guid::wstring_guid ( - const GUID & guid) + const GUID & guid) @@ -149,7 +162,8 @@

+

diff --git a/dir_4be4f7b278e009bf0f1906cf31fb73bd.html b/dir_4be4f7b278e009bf0f1906cf31fb73bd.html index f6e85967..dd1155b5 100644 --- a/dir_4be4f7b278e009bf0f1906cf31fb73bd.html +++ b/dir_4be4f7b278e009bf0f1906cf31fb73bd.html @@ -3,13 +3,15 @@ - + WinStd: UnitTests Directory Reference + + @@ -32,23 +34,33 @@
- + + + +
UnitTests Directory Reference
@@ -88,7 +101,8 @@
+ diff --git a/dir_6f50bb204833d887b928571856c82fbe.html b/dir_6f50bb204833d887b928571856c82fbe.html index 78b65c07..8b2d8abf 100644 --- a/dir_6f50bb204833d887b928571856c82fbe.html +++ b/dir_6f50bb204833d887b928571856c82fbe.html @@ -3,13 +3,15 @@ - + WinStd: include/WinStd Directory Reference + + @@ -32,23 +34,33 @@ - + + + +
WinStd Directory Reference
@@ -120,7 +133,8 @@
+ diff --git a/dir_d44c64559bbebec7f509842c48db8b23.html b/dir_d44c64559bbebec7f509842c48db8b23.html index 2fe70e2a..9a5020fc 100644 --- a/dir_d44c64559bbebec7f509842c48db8b23.html +++ b/dir_d44c64559bbebec7f509842c48db8b23.html @@ -3,13 +3,15 @@ - + WinStd: include Directory Reference + + @@ -32,23 +34,33 @@ - + + + +
include Directory Reference
@@ -88,7 +101,8 @@
+ diff --git a/doxygen.css b/doxygen.css index 7b7d851b..574b3335 100644 --- a/doxygen.css +++ b/doxygen.css @@ -1,4 +1,4 @@ -/* The standard CSS for doxygen 1.10.0*/ +/* The standard CSS for doxygen 1.12.0*/ html { /* page base colors */ @@ -657,7 +657,24 @@ dl.el { margin-left: -1cm; } +ul.check { + list-style:none; + text-indent: -16px; + padding-left: 38px; +} +li.unchecked:before { + content: "\2610\A0"; +} +li.checked:before { + content: "\2611\A0"; +} + +ol { + text-indent: 0px; +} + ul { + text-indent: 0px; overflow: visible; } @@ -1428,7 +1445,7 @@ table.fieldtable { padding: 3px 7px 2px; } -.fieldtable td.fieldtype, .fieldtable td.fieldname { +.fieldtable td.fieldtype, .fieldtable td.fieldname, .fieldtable td.fieldinit { white-space: nowrap; border-right: 1px solid var(--memdef-border-color); border-bottom: 1px solid var(--memdef-border-color); @@ -1439,6 +1456,12 @@ table.fieldtable { padding-top: 3px; } +.fieldtable td.fieldinit { + padding-top: 3px; + text-align: right; +} + + .fieldtable td.fielddoc { border-bottom: 1px solid var(--memdef-border-color); } @@ -1614,7 +1637,7 @@ dl.note { border-color: #D0C000; } -dl.warning, dl.attention { +dl.warning, dl.attention, dl.important { margin-left: -7px; padding-left: 3px; border-left: 4px solid; @@ -1662,7 +1685,7 @@ dl.bug dt a, dl.deprecated dt a, dl.todo dt a, dl.test a { font-weight: bold !important; } -dl.warning, dl.attention, dl.note, dl.deprecated, dl.bug, +dl.warning, dl.attention, dl.important, dl.note, dl.deprecated, dl.bug, dl.invariant, dl.pre, dl.post, dl.todo, dl.test, dl.remark { padding: 10px; margin: 10px 0px; @@ -1675,13 +1698,13 @@ dl.section dd { margin-bottom: 2px; } -dl.warning, dl.attention { +dl.warning, dl.attention, dl.important { background: var(--warning-color-bg); border-left: 8px solid var(--warning-color-hl); color: var(--warning-color-text); } -dl.warning dt, dl.attention dt { +dl.warning dt, dl.attention dt, dl.important dt { color: var(--warning-color-hl); } @@ -1739,7 +1762,9 @@ dl.deprecated dt a { color: var(--deprecated-color-hl) !important; } -dl.section dd, dl.bug dd, dl.deprecated dd, dl.todo dd, dl.test dd { +dl.note dd, dl.warning dd, dl.pre dd, dl.post dd, +dl.remark dd, dl.attention dd, dl.important dd, dl.invariant dd, +dl.bug dd, dl.deprecated dd, dl.todo dd, dl.test dd { margin-inline-start: 0px; } @@ -1891,20 +1916,17 @@ div.toc ul { padding: 0px; } -div.toc li.level1 { - margin-left: 0px; -} - -div.toc li.level2 { +div.toc li[class^='level'] { margin-left: 15px; } -div.toc li.level3 { - margin-left: 15px; +div.toc li.level1 { + margin-left: 0px; } -div.toc li.level4 { - margin-left: 15px; +div.toc li.empty { + background-image: none; + margin-top: 0px; } span.emoji { diff --git a/doxygen_crawl.html b/doxygen_crawl.html index 214dd637..0085bc83 100644 --- a/doxygen_crawl.html +++ b/doxygen_crawl.html @@ -4,7 +4,7 @@ Validator / crawler helper - + @@ -305,5 +305,908 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dynsections.js b/dynsections.js index 8f493264..b05f4c8d 100644 --- a/dynsections.js +++ b/dynsections.js @@ -23,6 +23,10 @@ @licend The above is the entire license notice for the JavaScript code in this file */ +function toggleVisibility(linkObj) { + return dynsection.toggleVisibility(linkObj); +} + let dynsection = { // helper function diff --git a/files.html b/files.html index 2c63607b..a91f258d 100644 --- a/files.html +++ b/files.html @@ -3,13 +3,15 @@ - + WinStd: File List + + @@ -32,24 +34,35 @@ - + + +
+
+
diff --git a/functions.html b/functions.html index a78d7f25..6a0c593f 100644 --- a/functions.html +++ b/functions.html @@ -3,13 +3,15 @@ - + WinStd: Class Members + + @@ -32,24 +34,35 @@
- + + +
+
Here is a list of all documented class members with links to the class documentation for each member:

- _ -

+ diff --git a/functions_a.html b/functions_a.html index 9f5f53e4..e4e6c3c7 100644 --- a/functions_a.html +++ b/functions_a.html @@ -3,13 +3,15 @@ - + WinStd: Class Members + + @@ -32,24 +34,35 @@ - + + +
+
- a -

    + diff --git a/functions_b.html b/functions_b.html index f8236ee4..bcde3c90 100644 --- a/functions_b.html +++ b/functions_b.html @@ -3,13 +3,15 @@ - + WinStd: Class Members + + @@ -32,24 +34,35 @@ - + + +
    +
    - b -

    + diff --git a/functions_c.html b/functions_c.html index 70ad0e7e..b8fc5b0f 100644 --- a/functions_c.html +++ b/functions_c.html @@ -3,13 +3,15 @@ - + WinStd: Class Members + + @@ -32,24 +34,35 @@ - + + +
    +
    - c -

  • com_obj() : winstd::com_obj< T >
  • com_runtime_error() : winstd::com_runtime_error
  • console_ctrl_handler() : winstd::console_ctrl_handler
  • -
  • const_pointer : winstd::heap_allocator< _Ty >
  • -
  • const_reference : winstd::heap_allocator< _Ty >
  • +
  • const_pointer : winstd::heap_allocator< _Ty >
  • +
  • const_reference : winstd::heap_allocator< _Ty >
  • construct() : winstd::heap_allocator< _Ty >
  • CoTaskMemFree_delete() : winstd::CoTaskMemFree_delete
  • create() : winstd::eap_packet, winstd::event_provider, winstd::event_session
  • @@ -94,7 +107,8 @@

    - c -

      + diff --git a/functions_d.html b/functions_d.html index f01fa3bd..cba5a4dc 100644 --- a/functions_d.html +++ b/functions_d.html @@ -3,13 +3,15 @@ - + WinStd: Class Members + + @@ -32,24 +34,35 @@ - + + +
      +
      - d -

  • delete_subkey() : winstd::reg_key
  • destroy() : winstd::heap_allocator< _Ty >
  • detach() : winstd::handle< T, INVAL >
  • -
  • difference_type : winstd::heap_allocator< _Ty >
  • +
  • difference_type : winstd::heap_allocator< _Ty >
  • disable_trace() : winstd::event_session
  • dplhandle() : winstd::dplhandle< T, INVAL >
  • duplicate() : winstd::dplhandle< T, INVAL >
  • @@ -91,7 +104,8 @@

    - d -

      + diff --git a/functions_e.html b/functions_e.html index c44d2c63..eb4fc7ce 100644 --- a/functions_e.html +++ b/functions_e.html @@ -3,13 +3,15 @@ - + WinStd: Class Members + + @@ -32,24 +34,35 @@ - + + +
      +
      Here is a list of all documented class members with links to the class documentation for each member:

      - e -

      + diff --git a/functions_f.html b/functions_f.html index 64d425f8..2065401a 100644 --- a/functions_f.html +++ b/functions_f.html @@ -3,13 +3,15 @@ - + WinStd: Class Members + + @@ -32,24 +34,35 @@ - + + +
      +
      - f -

    + diff --git a/functions_func.html b/functions_func.html index 53bd298c..2b0881c3 100644 --- a/functions_func.html +++ b/functions_func.html @@ -3,13 +3,15 @@ - + WinStd: Class Members - Functions + + @@ -32,24 +34,35 @@ - + + +
    +
    - a -

    + diff --git a/functions_func_b.html b/functions_func_b.html index 508b7762..4e6afd46 100644 --- a/functions_func_b.html +++ b/functions_func_b.html @@ -3,13 +3,15 @@ - + WinStd: Class Members - Functions + + @@ -32,24 +34,35 @@ - + + +
    +
    - b -

    + diff --git a/functions_func_c.html b/functions_func_c.html index 2c1b17ab..61e303de 100644 --- a/functions_func_c.html +++ b/functions_func_c.html @@ -3,13 +3,15 @@ - + WinStd: Class Members - Functions + + @@ -32,24 +34,35 @@ - + + +
    +
    - c -

  • com_obj() : winstd::com_obj< T >
  • com_runtime_error() : winstd::com_runtime_error
  • console_ctrl_handler() : winstd::console_ctrl_handler
  • -
  • construct() : winstd::heap_allocator< _Ty >
  • +
  • construct() : winstd::heap_allocator< _Ty >
  • CoTaskMemFree_delete() : winstd::CoTaskMemFree_delete
  • create() : winstd::eap_packet, winstd::event_provider, winstd::event_session
  • create_exp1() : winstd::crypt_key
  • @@ -92,7 +105,8 @@

    - c -

      + diff --git a/functions_func_d.html b/functions_func_d.html index e7bd9017..2afe3537 100644 --- a/functions_func_d.html +++ b/functions_func_d.html @@ -3,13 +3,15 @@ - + WinStd: Class Members - Functions + + @@ -32,24 +34,35 @@ - + + +
      +
      - d -

+
pch.h
@@ -114,7 +122,8 @@
+ diff --git a/resize.js b/resize.js new file mode 100644 index 00000000..178d03bc --- /dev/null +++ b/resize.js @@ -0,0 +1,147 @@ +/* + @licstart The following is the entire license notice for the JavaScript code in this file. + + The MIT License (MIT) + + Copyright (C) 1997-2020 by Dimitri van Heesch + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software + and associated documentation files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, publish, distribute, + sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or + substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING + BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + @licend The above is the entire license notice for the JavaScript code in this file + */ + +function initResizable(treeview) { + let sidenav,navtree,content,header,footer,barWidth=6; + const RESIZE_COOKIE_NAME = ''+'width'; + + function resizeWidth() { + const sidenavWidth = $(sidenav).outerWidth(); + content.css({marginLeft:parseInt(sidenavWidth)+"px"}); + if (typeof page_layout!=='undefined' && page_layout==1) { + footer.css({marginLeft:parseInt(sidenavWidth)+"px"}); + } + Cookie.writeSetting(RESIZE_COOKIE_NAME,sidenavWidth-barWidth); + } + + function restoreWidth(navWidth) { + content.css({marginLeft:parseInt(navWidth)+barWidth+"px"}); + if (typeof page_layout!=='undefined' && page_layout==1) { + footer.css({marginLeft:parseInt(navWidth)+barWidth+"px"}); + } + sidenav.css({width:navWidth + "px"}); + } + + function resizeHeight(treeview) { + const headerHeight = header.outerHeight(); + const windowHeight = $(window).height(); + let contentHeight; + if (treeview) + { + const footerHeight = footer.outerHeight(); + let navtreeHeight,sideNavHeight; + if (typeof page_layout==='undefined' || page_layout==0) { /* DISABLE_INDEX=NO */ + contentHeight = windowHeight - headerHeight - footerHeight; + navtreeHeight = contentHeight; + sideNavHeight = contentHeight; + } else if (page_layout==1) { /* DISABLE_INDEX=YES */ + contentHeight = windowHeight - footerHeight; + navtreeHeight = windowHeight - headerHeight; + sideNavHeight = windowHeight; + } + navtree.css({height:navtreeHeight + "px"}); + sidenav.css({height:sideNavHeight + "px"}); + } + else + { + contentHeight = windowHeight - headerHeight; + } + content.css({height:contentHeight + "px"}); + if (location.hash.slice(1)) { + (document.getElementById(location.hash.slice(1))||document.body).scrollIntoView(); + } + } + + function collapseExpand() { + let newWidth; + if (sidenav.width()>0) { + newWidth=0; + } else { + const width = Cookie.readSetting(RESIZE_COOKIE_NAME,250); + newWidth = (width>250 && width<$(window).width()) ? width : 250; + } + restoreWidth(newWidth); + const sidenavWidth = $(sidenav).outerWidth(); + Cookie.writeSetting(RESIZE_COOKIE_NAME,sidenavWidth-barWidth); + } + + header = $("#top"); + content = $("#doc-content"); + footer = $("#nav-path"); + sidenav = $("#side-nav"); + if (!treeview) { +// title = $("#titlearea"); +// titleH = $(title).height(); +// let animating = false; +// content.on("scroll", function() { +// slideOpts = { duration: 200, +// step: function() { +// contentHeight = $(window).height() - header.outerHeight(); +// content.css({ height : contentHeight + "px" }); +// }, +// done: function() { animating=false; } +// }; +// if (content.scrollTop()>titleH && title.css('display')!='none' && !animating) { +// title.slideUp(slideOpts); +// animating=true; +// } else if (content.scrollTop()<=titleH && title.css('display')=='none' && !animating) { +// title.slideDown(slideOpts); +// animating=true; +// } +// }); + } else { + navtree = $("#nav-tree"); + $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } }); + $(sidenav).resizable({ minWidth: 0 }); + } + $(window).resize(function() { resizeHeight(treeview); }); + if (treeview) + { + const device = navigator.userAgent.toLowerCase(); + const touch_device = device.match(/(iphone|ipod|ipad|android)/); + if (touch_device) { /* wider split bar for touch only devices */ + $(sidenav).css({ paddingRight:'20px' }); + $('.ui-resizable-e').css({ width:'20px' }); + $('#nav-sync').css({ right:'34px' }); + barWidth=20; + } + const width = Cookie.readSetting(RESIZE_COOKIE_NAME,250); + if (width) { restoreWidth(width); } else { resizeWidth(); } + } + resizeHeight(treeview); + const url = location.href; + const i=url.indexOf("#"); + if (i>=0) window.location.hash=url.substr(i); + const _preventDefault = function(evt) { evt.preventDefault(); }; + if (treeview) + { + $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault); + $(".ui-resizable-handle").dblclick(collapseExpand); + // workaround for firefox + $("body").css({overflow: "hidden"}); + } + $(window).on('load',function() { resizeHeight(treeview); }); +} +/* @license-end */ diff --git a/search/all_0.js b/search/all_0.js index ea6d57bc..3a6ffff1 100644 --- a/search/all_0.js +++ b/search/all_0.js @@ -2,8 +2,8 @@ var searchData= [ ['_5f_5fl_0',['__L',['../group___win_std_general.html#ga2cbff438813b72648c18c8af875f47c9',1,'Common.h']]], ['_5fl_1',['_L',['../group___win_std_general.html#ga8b08a24569840250e78cb8d510f1324a',1,'Common.h']]], - ['_5fmybase_2',['_Mybase',['../classwinstd_1_1sanitizing__allocator.html#af60051d2fb18f2c2353ffe9bb6a06087',1,'winstd::sanitizing_allocator']]], - ['_5fmyt_3',['_Myt',['../structwinstd_1_1_local_free__delete.html#a1711e7f5b78649499330c8fe8007b3ea',1,'winstd::LocalFree_delete::_Myt'],['../structwinstd_1_1_local_free__delete_3_01___ty_0f_0e_4.html#a7c9ed5a011c6d31b3189bdf3d212cd0d',1,'winstd::LocalFree_delete< _Ty[]>::_Myt'],['../structwinstd_1_1_cred_free__delete.html#ab46fe0807ba356084523c04c8c565b53',1,'winstd::CredFree_delete::_Myt'],['../structwinstd_1_1_cred_free__delete_3_01___ty_0f_0e_4.html#aa735db2daba14212c29b3c5af0e0b0d1',1,'winstd::CredFree_delete< _Ty[]>::_Myt'],['../structwinstd_1_1_wlan_free_memory__delete.html#a92dd05a3becb4a67ad858472eb615668',1,'winstd::WlanFreeMemory_delete::_Myt'],['../structwinstd_1_1_wlan_free_memory__delete_3_01___ty_0f_0e_4.html#a42bc91dcaea20ff32034ba5482027837',1,'winstd::WlanFreeMemory_delete< _Ty[]>::_Myt']]], + ['_5fmybase_2',['_Mybase',['../classwinstd_1_1sanitizing__allocator.html#a2e32e4536de394ee18ec5cf1aedff224',1,'winstd::sanitizing_allocator']]], + ['_5fmyt_3',['_Myt',['../structwinstd_1_1_local_free__delete.html#a1152b389f14cbd588d7831dad7f9e18f',1,'winstd::LocalFree_delete::_Myt'],['../structwinstd_1_1_local_free__delete_3_01___ty_0f_0e_4.html#a23e70527d251dcab4e407530bd458e88',1,'winstd::LocalFree_delete< _Ty[]>::_Myt'],['../structwinstd_1_1_cred_free__delete.html#a0e249dd2a9471e70640d7d0641c62f11',1,'winstd::CredFree_delete::_Myt'],['../structwinstd_1_1_cred_free__delete_3_01___ty_0f_0e_4.html#a80aae1221b236b92fea40b7b31e918ea',1,'winstd::CredFree_delete< _Ty[]>::_Myt'],['../structwinstd_1_1_wlan_free_memory__delete.html#abf3df9ee0ecc1d8c64175560f0be7ec5',1,'winstd::WlanFreeMemory_delete::_Myt'],['../structwinstd_1_1_wlan_free_memory__delete_3_01___ty_0f_0e_4.html#a1c88de8b8c3a39ce2a5e6810e82fa68f',1,'winstd::WlanFreeMemory_delete< _Ty[]>::_Myt']]], ['_5ftcerr_4',['_tcerr',['../group___win_std_str_format.html#gad92c7b3354a4cc35a5b9ddd16841a9c0',1,'Common.h']]], ['_5ftcin_5',['_tcin',['../group___win_std_str_format.html#gadd052e867c5d82d180924da9d0e16798',1,'Common.h']]], ['_5ftclog_6',['_tclog',['../group___win_std_str_format.html#ga51ea87c84320a64b846a002ab52ac1b8',1,'Common.h']]], diff --git a/search/all_10.js b/search/all_10.js index 4a627882..7637039c 100644 --- a/search/all_10.js +++ b/search/all_10.js @@ -4,7 +4,7 @@ var searchData= ['rebind_1',['rebind',['../structwinstd_1_1heap__allocator_1_1rebind.html',1,'winstd::heap_allocator< _Ty >::rebind< _Other >'],['../structwinstd_1_1sanitizing__allocator_1_1rebind.html',1,'winstd::sanitizing_allocator< _Ty >::rebind< _Other >']]], ['ref_5funique_5fptr_2',['ref_unique_ptr',['../classwinstd_1_1ref__unique__ptr.html',1,'winstd::ref_unique_ptr< _Ty, _Dx >'],['../classwinstd_1_1ref__unique__ptr.html#af092ed7ea1346c7a92b20ae2f6de5577',1,'winstd::ref_unique_ptr::ref_unique_ptr(std::unique_ptr< _Ty, _Dx > &owner)'],['../classwinstd_1_1ref__unique__ptr.html#a755e6f4235fa54330304921ea14b76bc',1,'winstd::ref_unique_ptr::ref_unique_ptr(ref_unique_ptr< _Ty, _Dx > &&other)'],['../classwinstd_1_1ref__unique__ptr_3_01___ty_0f_0e_00_01___dx_01_4.html#a884355151c4c7d65f4ac279966793d5d',1,'winstd::ref_unique_ptr< _Ty[], _Dx >::ref_unique_ptr(std::unique_ptr< _Ty[], _Dx > &owner) noexcept'],['../classwinstd_1_1ref__unique__ptr_3_01___ty_0f_0e_00_01___dx_01_4.html#a2e6a20baa25af8b928d80ccc566e11cc',1,'winstd::ref_unique_ptr< _Ty[], _Dx >::ref_unique_ptr(ref_unique_ptr< _Ty[], _Dx > &&other)']]], ['ref_5funique_5fptr_3c_20_5fty_5b_5d_2c_20_5fdx_20_3e_3',['ref_unique_ptr< _Ty[], _Dx >',['../classwinstd_1_1ref__unique__ptr_3_01___ty_0f_0e_00_01___dx_01_4.html',1,'winstd']]], - ['reference_4',['reference',['../classwinstd_1_1heap__allocator.html#a88ed8962cd0d64849119d7a11135b2d0',1,'winstd::heap_allocator']]], + ['reference_4',['reference',['../classwinstd_1_1heap__allocator.html#a5463552f710d210d3f8aa7f5fa756ef2',1,'winstd::heap_allocator']]], ['reg_5fkey_5',['reg_key',['../classwinstd_1_1reg__key.html',1,'winstd']]], ['regcreatekeyexa_6',['RegCreateKeyExA',['../group___win_std_win_a_p_i.html#ga1cba8a6da4757b79b5e416be149dc923',1,'Win.h']]], ['regcreatekeyexw_7',['RegCreateKeyExW',['../group___win_std_win_a_p_i.html#ga131fdda112e5cbfd123718153d925932',1,'Win.h']]], diff --git a/search/all_11.js b/search/all_11.js index 978befe1..d89e854c 100644 --- a/search/all_11.js +++ b/search/all_11.js @@ -31,7 +31,7 @@ var searchData= ['setup_5fdriver_5finfo_5flist_5fbuilder_28',['setup_driver_info_list_builder',['../classwinstd_1_1setup__driver__info__list__builder.html',1,'winstd::setup_driver_info_list_builder'],['../classwinstd_1_1setup__driver__info__list__builder.html#a4774edfbe680a3a496e243544a68c94f',1,'winstd::setup_driver_info_list_builder::setup_driver_info_list_builder()']]], ['shell_20api_29',['Shell API',['../group___win_std_shell_w_a_p_i.html',1,'']]], ['size_30',['size',['../classwinstd_1_1data__blob.html#ab2ad06e271e8503d7158408773054d23',1,'winstd::data_blob::size()'],['../classwinstd_1_1eap__packet.html#a2534ad15ae47e2d46354d9f535f4031f',1,'winstd::eap_packet::size()']]], - ['size_5ftype_31',['size_type',['../classwinstd_1_1heap__allocator.html#a01815f4f9097b1447c7ddaa2de868f59',1,'winstd::heap_allocator']]], + ['size_5ftype_31',['size_type',['../classwinstd_1_1heap__allocator.html#ae67b85ffe695b1123df8ee811c241248',1,'winstd::heap_allocator']]], ['sprintf_32',['sprintf',['../group___win_std_str_format.html#gac397f655a858a069b3e521940af64331',1,'Common.h']]], ['start_33',['start',['../group___win_std_e_a_p_a_p_i.html#gga50f5584ca708165f43cec42c42243315aea2b2676c28c0db26d39331a336c6b92',1,'winstd']]], ['status_34',['status',['../classwinstd_1_1event__trace__enabler.html#a726b84e91002da1243d512c37a060293',1,'winstd::event_trace_enabler::status()'],['../classwinstd_1_1dc__selector.html#aacb4060094f2c4b1747ffa76455b235d',1,'winstd::dc_selector::status()'],['../classwinstd_1_1setup__driver__info__list__builder.html#ae9c062e82afc1ee1eda5926a0567637e',1,'winstd::setup_driver_info_list_builder::status()']]], diff --git a/search/all_14.js b/search/all_14.js index 17847e09..fc236666 100644 --- a/search/all_14.js +++ b/search/all_14.js @@ -1,6 +1,6 @@ var searchData= [ - ['value_5ftype_0',['value_type',['../classwinstd_1_1heap__allocator.html#a091ba3fb46ee75b8350c3fa9e6277c57',1,'winstd::heap_allocator']]], + ['value_5ftype_0',['value_type',['../classwinstd_1_1heap__allocator.html#a0c6321f6e2523857b9ca0638651ee545',1,'winstd::heap_allocator']]], ['variant_1',['variant',['../classwinstd_1_1variant.html',1,'winstd::variant'],['../classwinstd_1_1variant.html#ab5b8d68675d23082008f57e9439c3a19',1,'winstd::variant::variant() noexcept'],['../classwinstd_1_1variant.html#a6b13abee9e259102b5cfcadf799ac33d',1,'winstd::variant::variant(const VARIANT &varSrc)'],['../classwinstd_1_1variant.html#a170212d31acb2971ddf55b9247d6dc48',1,'winstd::variant::variant(VARIANT &&varSrc) noexcept'],['../classwinstd_1_1variant.html#a02c9aacfd9b4db09f83d470d9ee62207',1,'winstd::variant::variant(bool bSrc) noexcept'],['../classwinstd_1_1variant.html#ac3d480425647e2ce72aa291eee5259bb',1,'winstd::variant::variant(char cSrc) noexcept'],['../classwinstd_1_1variant.html#a6b7b7b21cd5e8293fc95957dec6ad1ac',1,'winstd::variant::variant(unsigned char nSrc) noexcept'],['../classwinstd_1_1variant.html#ae5f40c0c9ceb73d9a11f9eb5cf6e7acf',1,'winstd::variant::variant(short nSrc) noexcept'],['../classwinstd_1_1variant.html#aa38cc1a50cd08a3b81b8c87a968dd55a',1,'winstd::variant::variant(unsigned short nSrc) noexcept'],['../classwinstd_1_1variant.html#a26d5b7a108cc2ae8ea6b9a60e8cfe68d',1,'winstd::variant::variant(int nSrc, VARTYPE vtSrc=VT_I4) noexcept'],['../classwinstd_1_1variant.html#a89726aecadc0b6e14108daae894a477b',1,'winstd::variant::variant(unsigned int nSrc, VARTYPE vtSrc=VT_UI4) noexcept'],['../classwinstd_1_1variant.html#aa0b2188d63b23c1e7ade2d8c4871e172',1,'winstd::variant::variant(long nSrc, VARTYPE vtSrc=VT_I4) noexcept'],['../classwinstd_1_1variant.html#a76dee63188ebb8946d0c2152f553e0f5',1,'winstd::variant::variant(unsigned long nSrc) noexcept'],['../classwinstd_1_1variant.html#a1399659c252205487f2f85f2855567e2',1,'winstd::variant::variant(float fltSrc) noexcept'],['../classwinstd_1_1variant.html#add6d3bb11f3ba343d2286dde7a4ce90a',1,'winstd::variant::variant(double dblSrc, VARTYPE vtSrc=VT_R8) noexcept'],['../classwinstd_1_1variant.html#a9ebbc5928574b7008c1c317e3528b7cb',1,'winstd::variant::variant(long long nSrc) noexcept'],['../classwinstd_1_1variant.html#ac1bc843b25415fd843bc2420a48ff9ad',1,'winstd::variant::variant(unsigned long long nSrc) noexcept'],['../classwinstd_1_1variant.html#ae60f506468b32ba02fe499c8a93a9b56',1,'winstd::variant::variant(CY cySrc) noexcept'],['../classwinstd_1_1variant.html#a66bf6c6544769977e1032732142bb464',1,'winstd::variant::variant(LPCOLESTR lpszSrc) noexcept'],['../classwinstd_1_1variant.html#ad22ad4af4e10101790dc481dbe1630da',1,'winstd::variant::variant(BSTR bstr) noexcept'],['../classwinstd_1_1variant.html#a2040f3ea8b404ff6b2847c9c9146141a',1,'winstd::variant::variant(IDispatch *pSrc)'],['../classwinstd_1_1variant.html#a841c962b433fd374aa1dfafc844e4b64',1,'winstd::variant::variant(IUnknown *pSrc)'],['../classwinstd_1_1variant.html#a278e06d505cad1af830dd88c2c656cd3',1,'winstd::variant::variant(const SAFEARRAY *pSrc)']]], ['variantasboolean_2',['VariantAsBoolean',['../group___win_std_c_o_m_helpers.html#gaaf521a4f071e8ae5d1bf2ae76000b913',1,'winstd']]], ['variantasinteger_3',['VariantAsInteger',['../group___win_std_c_o_m_helpers.html#ga57c60521128fe90efde68dca7c5b54fe',1,'winstd']]], diff --git a/search/all_3.js b/search/all_3.js index f1bd770d..252aca99 100644 --- a/search/all_3.js +++ b/search/all_3.js @@ -18,8 +18,8 @@ var searchData= ['com_5fobj_15',['com_obj',['../classwinstd_1_1com__obj.html',1,'winstd::com_obj< T >'],['../classwinstd_1_1com__obj.html#a1983f51468452e51890a3a561d3d2627',1,'winstd::com_obj::com_obj(REFCLSID rclsid, LPUNKNOWN pUnkOuter, DWORD dwClsContext)'],['../classwinstd_1_1com__obj.html#aa2c8f855aaad8e35c1da6cfd9f32e01e',1,'winstd::com_obj::com_obj(_Other *other)'],['../classwinstd_1_1com__obj.html#aace64e8520e9caf7c258ae207a5ef874',1,'winstd::com_obj::com_obj(com_obj< _Other > &other)']]], ['com_5fruntime_5ferror_16',['com_runtime_error',['../classwinstd_1_1com__runtime__error.html',1,'winstd::com_runtime_error'],['../classwinstd_1_1com__runtime__error.html#a75030cbe7acc6532140c73caf4b15ed8',1,'winstd::com_runtime_error::com_runtime_error(error_type num, const std::string &msg)'],['../classwinstd_1_1com__runtime__error.html#aa1b65214e16b18bf8b9b191abff254b7',1,'winstd::com_runtime_error::com_runtime_error(error_type num, const char *msg=nullptr)']]], ['console_5fctrl_5fhandler_17',['console_ctrl_handler',['../classwinstd_1_1console__ctrl__handler.html',1,'winstd::console_ctrl_handler'],['../classwinstd_1_1console__ctrl__handler.html#a1c05134a4453123739ac5b45f62fe13a',1,'winstd::console_ctrl_handler::console_ctrl_handler()']]], - ['const_5fpointer_18',['const_pointer',['../classwinstd_1_1heap__allocator.html#adc56ad9f2484d7d34299bef73709ef9c',1,'winstd::heap_allocator']]], - ['const_5freference_19',['const_reference',['../classwinstd_1_1heap__allocator.html#ad98c7e8fc3e14da42a8dfc897e75a790',1,'winstd::heap_allocator']]], + ['const_5fpointer_18',['const_pointer',['../classwinstd_1_1heap__allocator.html#a24f49c7d15002eb34824c82fa885f130',1,'winstd::heap_allocator']]], + ['const_5freference_19',['const_reference',['../classwinstd_1_1heap__allocator.html#ade664b2895bde1f51894ccdbb86a508d',1,'winstd::heap_allocator']]], ['construct_20',['construct',['../classwinstd_1_1heap__allocator.html#ad307cb4c9eaf2dcbcd29b379bc01b463',1,'winstd::heap_allocator::construct(pointer ptr, const _Ty &val)'],['../classwinstd_1_1heap__allocator.html#a95485648de70d7896f81ef9cdad01fbf',1,'winstd::heap_allocator::construct(pointer ptr, _Ty &&val)']]], ['convertstringsecuritydescriptortosecuritydescriptora_21',['ConvertStringSecurityDescriptorToSecurityDescriptorA',['../group___win_std_s_d_d_l.html#gaafcbc965140db7ed3d50d5dcc9dfb34c',1,'SDDL.h']]], ['convertstringsecuritydescriptortosecuritydescriptorw_22',['ConvertStringSecurityDescriptorToSecurityDescriptorW',['../group___win_std_s_d_d_l.html#gae88d6ef3f22c3fccba5950a94c436fb0',1,'SDDL.h']]], diff --git a/search/all_4.js b/search/all_4.js index 045a6fda..20f6b6c6 100644 --- a/search/all_4.js +++ b/search/all_4.js @@ -8,7 +8,7 @@ var searchData= ['delete_5fsubkey_5',['delete_subkey',['../classwinstd_1_1reg__key.html#a5b8ee8731e0caa51c84b271f43604f54',1,'winstd::reg_key']]], ['destroy_6',['destroy',['../classwinstd_1_1heap__allocator.html#aef179f33ca0ad99ffda16f004b146143',1,'winstd::heap_allocator']]], ['detach_7',['detach',['../classwinstd_1_1handle.html#ad5acf6ce53e092b8d4d53f909cf321f9',1,'winstd::handle']]], - ['difference_5ftype_8',['difference_type',['../classwinstd_1_1heap__allocator.html#a4b39b8176ea30e1ceb02642c44de7b43',1,'winstd::heap_allocator']]], + ['difference_5ftype_8',['difference_type',['../classwinstd_1_1heap__allocator.html#afed1865fcda214ad7bdc2a8a74413ec5',1,'winstd::heap_allocator']]], ['disable_5ftrace_9',['disable_trace',['../classwinstd_1_1event__session.html#a86ff12521bc1c863ea685b8a689fd81b',1,'winstd::event_session']]], ['dplhandle_10',['dplhandle',['../classwinstd_1_1dplhandle.html',1,'winstd::dplhandle< T, INVAL >'],['../classwinstd_1_1dplhandle.html#ac95cbfb481c0d5e6c60d130f3c270b59',1,'winstd::dplhandle::dplhandle() noexcept'],['../classwinstd_1_1dplhandle.html#ab1ac74d5f212fddc217d1a8190a01177',1,'winstd::dplhandle::dplhandle(handle_type h) noexcept'],['../classwinstd_1_1dplhandle.html#ac7439fc22a5754f8aeb2b0e1afd25b9c',1,'winstd::dplhandle::dplhandle(const dplhandle< handle_type, INVAL > &h)'],['../classwinstd_1_1dplhandle.html#ac1aa19e060402006d8ff8404be6b07c3',1,'winstd::dplhandle::dplhandle(dplhandle< handle_type, INVAL > &&h) noexcept']]], ['dplhandle_3c_20bstr_2c_20null_20_3e_11',['dplhandle< BSTR, NULL >',['../classwinstd_1_1dplhandle.html',1,'winstd']]], diff --git a/search/all_5.js b/search/all_5.js index a2839afb..265eabeb 100644 --- a/search/all_5.js +++ b/search/all_5.js @@ -18,7 +18,7 @@ var searchData= ['enable_5ftrace_15',['enable_trace',['../classwinstd_1_1event__session.html#aa140384c61972ebabbf6489e8aa5700b',1,'winstd::event_session']]], ['end_16',['end',['../group___win_std_e_a_p_a_p_i.html#gga50f5584ca708165f43cec42c42243315a7f021a1415b86f2d013b2618fb31ae53',1,'winstd']]], ['enumerate_17',['enumerate',['../classwinstd_1_1heap.html#a938dca2d614e8d33ae5add61b013847f',1,'winstd::heap']]], - ['error_5ftype_18',['error_type',['../classwinstd_1_1num__runtime__error.html#a6fa2de87d0151b3ad9cac58f838852e0',1,'winstd::num_runtime_error']]], + ['error_5ftype_18',['error_type',['../classwinstd_1_1num__runtime__error.html#ac251f4b79b67a800dcd108fedb58d5b5',1,'winstd::num_runtime_error']]], ['event_19',['event',['../group___win_std_win_a_p_i.html#ga8aad78395ff021f46a34e51816038d20',1,'winstd']]], ['event_20tracing_20for_20windows_20api_20',['Event Tracing for Windows API',['../group___win_std_e_t_w_a_p_i.html',1,'']]], ['event_5fdata_21',['event_data',['../classwinstd_1_1event__data.html',1,'winstd::event_data'],['../classwinstd_1_1event__data.html#acb4032673a3b2376eb0d62115bb37c4f',1,'winstd::event_data::event_data()'],['../classwinstd_1_1event__data.html#a0a53ee58077eed5bca18f146c34ced44',1,'winstd::event_data::event_data(const char &data)'],['../classwinstd_1_1event__data.html#a86447ba8727fe91c0de85b8f7835a4c1',1,'winstd::event_data::event_data(const unsigned char &data)'],['../classwinstd_1_1event__data.html#a26563233e9507adbf183291974005eaf',1,'winstd::event_data::event_data(const int &data)'],['../classwinstd_1_1event__data.html#a59b2ac8e1b681412ea0aa582b3028681',1,'winstd::event_data::event_data(const unsigned int &data)'],['../classwinstd_1_1event__data.html#aef6715d8e3e68eac7b7bbceacb3aff93',1,'winstd::event_data::event_data(const long &data)'],['../classwinstd_1_1event__data.html#aba0a6535c84e9165b5ccdf943449e10c',1,'winstd::event_data::event_data(const unsigned long &data)'],['../classwinstd_1_1event__data.html#a4d309bcda353b42ba1005b3c7b6f8dc1',1,'winstd::event_data::event_data(const GUID &data)'],['../classwinstd_1_1event__data.html#a74be98ecad61265232c0752e0e823a8e',1,'winstd::event_data::event_data(const char *data)'],['../classwinstd_1_1event__data.html#a0ac38aca75ec84f5265eb897fb3c7a7e',1,'winstd::event_data::event_data(const wchar_t *data)'],['../classwinstd_1_1event__data.html#aa9741846e354b469b750db2ea982b12d',1,'winstd::event_data::event_data(const std::basic_string< _Elem, _Traits, _Ax > &data)'],['../classwinstd_1_1event__data.html#a31af4a774845ec0f7db4267f573cd422',1,'winstd::event_data::event_data(const void *data, ULONG size)']]], diff --git a/search/all_8.js b/search/all_8.js index 69e330d0..9de40643 100644 --- a/search/all_8.js +++ b/search/all_8.js @@ -30,7 +30,7 @@ var searchData= ['handle_3c_20t_2c_20null_20_3e_27',['handle< T, NULL >',['../classwinstd_1_1handle.html',1,'winstd']]], ['handle_3c_20tracehandle_2c_200_20_3e_28',['handle< TRACEHANDLE, 0 >',['../classwinstd_1_1handle.html',1,'winstd']]], ['handle_3c_20tracehandle_2c_20invalid_5fprocesstrace_5fhandle_20_3e_29',['handle< TRACEHANDLE, INVALID_PROCESSTRACE_HANDLE >',['../classwinstd_1_1handle.html',1,'winstd']]], - ['handle_5ftype_30',['handle_type',['../classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81',1,'winstd::handle']]], + ['handle_5ftype_30',['handle_type',['../classwinstd_1_1handle.html#ae5faed333075739a27c99372967e01a6',1,'winstd::handle']]], ['handles_31',['System Handles',['../group___win_std_sys_handles.html',1,'']]], ['heap_32',['heap',['../classwinstd_1_1heap.html',1,'winstd']]], ['heap_5fallocator_33',['heap_allocator',['../classwinstd_1_1heap__allocator.html',1,'winstd::heap_allocator< _Ty >'],['../classwinstd_1_1heap__allocator.html#a71fbccc1260209b367f2ddfe96c5825a',1,'winstd::heap_allocator::heap_allocator(HANDLE heap)'],['../classwinstd_1_1heap__allocator.html#a12f843aaf554b4ca91ea69f7a321daf3',1,'winstd::heap_allocator::heap_allocator(const heap_allocator< _Other > &other)']]], diff --git a/search/all_d.js b/search/all_d.js index abf4d981..0925b5d8 100644 --- a/search/all_d.js +++ b/search/all_d.js @@ -21,7 +21,7 @@ var searchData= ['operator_3d_3d_18',['operator==',['../classwinstd_1_1variant.html#a7e4c402b1b8d459aa2d73fb5b5e83853',1,'winstd::variant::operator==()'],['../classwinstd_1_1handle.html#ab6021e9c11accef6b813948dc4601ddc',1,'winstd::handle::operator==()'],['../classwinstd_1_1cert__context.html#a2f3ad38a637fce69d8c2a5ee3460a296',1,'winstd::cert_context::operator==()'],['../group___win_std_e_a_p_a_p_i.html#ga4fac0d35e8ca3fa63c53f85a9d10fa80',1,'operator==(): EAP.h']]], ['operator_3e_19',['operator>',['../classwinstd_1_1variant.html#a323955b7123424305aed08eea20f9381',1,'winstd::variant::operator>()'],['../classwinstd_1_1handle.html#ae7361f6159006e3f87cbe10ba2a76329',1,'winstd::handle::operator>()'],['../classwinstd_1_1cert__context.html#a7224d1fe6c57bfe903fa8a6df32d2466',1,'winstd::cert_context::operator>()']]], ['operator_3e_3d_20',['operator>=',['../classwinstd_1_1variant.html#aa7ea26592a0d6b6c529eb87130ebd820',1,'winstd::variant::operator>=()'],['../classwinstd_1_1handle.html#a20e325dde8a25d1e3a7efb50b431641b',1,'winstd::handle::operator>=()'],['../classwinstd_1_1cert__context.html#a6c9f09455ef40e581accc6499222040c',1,'winstd::cert_context::operator>=()']]], - ['other_21',['other',['../structwinstd_1_1sanitizing__allocator_1_1rebind.html#a6a195ba8f7b42d8e82304efb08e18679',1,'winstd::sanitizing_allocator::rebind::other'],['../structwinstd_1_1heap__allocator_1_1rebind.html#a7916519ada01914c23461a64334ff331',1,'winstd::heap_allocator::rebind::other']]], + ['other_21',['other',['../structwinstd_1_1sanitizing__allocator_1_1rebind.html#a2d4d74770f232a074979281e0797a9b8',1,'winstd::sanitizing_allocator::rebind::other'],['../structwinstd_1_1heap__allocator_1_1rebind.html#ad853be2b0525325c1ab42acd1fe154c4',1,'winstd::heap_allocator::rebind::other']]], ['otp_22',['otp',['../group___win_std_e_a_p_a_p_i.html#gga50f5584ca708165f43cec42c42243315ad2270e7120a93c8b0a6a34760e654c7d',1,'winstd']]], ['outputdebugstr_23',['OutputDebugStr',['../group___win_std_win_a_p_i.html#ga9742ac3627448c97ece59127536bb830',1,'OutputDebugStr(LPCSTR lpOutputString,...) noexcept: Win.h'],['../group___win_std_win_a_p_i.html#ga2ccdeb31db4cf3a93f6b8bcf78636f7b',1,'OutputDebugStr(LPCWSTR lpOutputString,...) noexcept: Win.h']]], ['outputdebugstrv_24',['OutputDebugStrV',['../group___win_std_win_a_p_i.html#gae4bcdb27022cf775035520bc749cbc84',1,'OutputDebugStrV(LPCSTR lpOutputString, va_list arg) noexcept: Win.h'],['../group___win_std_win_a_p_i.html#gae399b26e1670d999125e1332e03e9f70',1,'OutputDebugStrV(LPCWSTR lpOutputString, va_list arg) noexcept: Win.h']]] diff --git a/search/all_e.js b/search/all_e.js index 07fe61ae..5f711a18 100644 --- a/search/all_e.js +++ b/search/all_e.js @@ -5,7 +5,7 @@ var searchData= ['pathremovebackslasha_2',['PathRemoveBackslashA',['../group___win_std_shell_w_a_p_i.html#gaa1ba3f71c61d6d0c7cb611f3cdc193a8',1,'Shell.h']]], ['pathremovebackslashw_3',['PathRemoveBackslashW',['../group___win_std_shell_w_a_p_i.html#ga5784e817cc8d4a8e45199e871f61da6c',1,'Shell.h']]], ['peap_4',['peap',['../group___win_std_e_a_p_a_p_i.html#gga50f5584ca708165f43cec42c42243315ab62d9100a672844bff4ac5cbc8de9fce',1,'winstd']]], - ['pointer_5',['pointer',['../classwinstd_1_1heap__allocator.html#ae04bc3ff970d32e6a2967072efdb06cd',1,'winstd::heap_allocator']]], + ['pointer_5',['pointer',['../classwinstd_1_1heap__allocator.html#a1dfe27a9db16c1266f780c82ba452f07',1,'winstd::heap_allocator']]], ['policy_6',['Security Policy',['../md__s_e_c_u_r_i_t_y.html',1,'']]], ['portable_7',['Portable',['../index.html#autotoc_md2',1,'']]], ['printf_5flpolestr_8',['PRINTF_LPOLESTR',['../group___win_std_str_format.html#ga1bb2b564655d7b0dee3ec63a0fda2eb5',1,'Common.h']]], diff --git a/search/typedefs_0.js b/search/typedefs_0.js index a3b659df..cd69e686 100644 --- a/search/typedefs_0.js +++ b/search/typedefs_0.js @@ -1,5 +1,5 @@ var searchData= [ - ['_5fmybase_0',['_Mybase',['../classwinstd_1_1sanitizing__allocator.html#af60051d2fb18f2c2353ffe9bb6a06087',1,'winstd::sanitizing_allocator']]], - ['_5fmyt_1',['_Myt',['../structwinstd_1_1_local_free__delete.html#a1711e7f5b78649499330c8fe8007b3ea',1,'winstd::LocalFree_delete::_Myt'],['../structwinstd_1_1_local_free__delete_3_01___ty_0f_0e_4.html#a7c9ed5a011c6d31b3189bdf3d212cd0d',1,'winstd::LocalFree_delete< _Ty[]>::_Myt'],['../structwinstd_1_1_cred_free__delete.html#ab46fe0807ba356084523c04c8c565b53',1,'winstd::CredFree_delete::_Myt'],['../structwinstd_1_1_cred_free__delete_3_01___ty_0f_0e_4.html#aa735db2daba14212c29b3c5af0e0b0d1',1,'winstd::CredFree_delete< _Ty[]>::_Myt'],['../structwinstd_1_1_wlan_free_memory__delete.html#a92dd05a3becb4a67ad858472eb615668',1,'winstd::WlanFreeMemory_delete::_Myt'],['../structwinstd_1_1_wlan_free_memory__delete_3_01___ty_0f_0e_4.html#a42bc91dcaea20ff32034ba5482027837',1,'winstd::WlanFreeMemory_delete< _Ty[]>::_Myt']]] + ['_5fmybase_0',['_Mybase',['../classwinstd_1_1sanitizing__allocator.html#a2e32e4536de394ee18ec5cf1aedff224',1,'winstd::sanitizing_allocator']]], + ['_5fmyt_1',['_Myt',['../structwinstd_1_1_local_free__delete.html#a1152b389f14cbd588d7831dad7f9e18f',1,'winstd::LocalFree_delete::_Myt'],['../structwinstd_1_1_local_free__delete_3_01___ty_0f_0e_4.html#a23e70527d251dcab4e407530bd458e88',1,'winstd::LocalFree_delete< _Ty[]>::_Myt'],['../structwinstd_1_1_cred_free__delete.html#a0e249dd2a9471e70640d7d0641c62f11',1,'winstd::CredFree_delete::_Myt'],['../structwinstd_1_1_cred_free__delete_3_01___ty_0f_0e_4.html#a80aae1221b236b92fea40b7b31e918ea',1,'winstd::CredFree_delete< _Ty[]>::_Myt'],['../structwinstd_1_1_wlan_free_memory__delete.html#abf3df9ee0ecc1d8c64175560f0be7ec5',1,'winstd::WlanFreeMemory_delete::_Myt'],['../structwinstd_1_1_wlan_free_memory__delete_3_01___ty_0f_0e_4.html#a1c88de8b8c3a39ce2a5e6810e82fa68f',1,'winstd::WlanFreeMemory_delete< _Ty[]>::_Myt']]] ]; diff --git a/search/typedefs_1.js b/search/typedefs_1.js index 3752f852..17ed8a64 100644 --- a/search/typedefs_1.js +++ b/search/typedefs_1.js @@ -1,5 +1,5 @@ var searchData= [ - ['const_5fpointer_0',['const_pointer',['../classwinstd_1_1heap__allocator.html#adc56ad9f2484d7d34299bef73709ef9c',1,'winstd::heap_allocator']]], - ['const_5freference_1',['const_reference',['../classwinstd_1_1heap__allocator.html#ad98c7e8fc3e14da42a8dfc897e75a790',1,'winstd::heap_allocator']]] + ['const_5fpointer_0',['const_pointer',['../classwinstd_1_1heap__allocator.html#a24f49c7d15002eb34824c82fa885f130',1,'winstd::heap_allocator']]], + ['const_5freference_1',['const_reference',['../classwinstd_1_1heap__allocator.html#ade664b2895bde1f51894ccdbb86a508d',1,'winstd::heap_allocator']]] ]; diff --git a/search/typedefs_2.js b/search/typedefs_2.js index d519699a..989eb703 100644 --- a/search/typedefs_2.js +++ b/search/typedefs_2.js @@ -1,4 +1,4 @@ var searchData= [ - ['difference_5ftype_0',['difference_type',['../classwinstd_1_1heap__allocator.html#a4b39b8176ea30e1ceb02642c44de7b43',1,'winstd::heap_allocator']]] + ['difference_5ftype_0',['difference_type',['../classwinstd_1_1heap__allocator.html#afed1865fcda214ad7bdc2a8a74413ec5',1,'winstd::heap_allocator']]] ]; diff --git a/search/typedefs_3.js b/search/typedefs_3.js index fa48189d..2b2d1583 100644 --- a/search/typedefs_3.js +++ b/search/typedefs_3.js @@ -4,6 +4,6 @@ var searchData= ['eap_5fblob_5fruntime_1',['eap_blob_runtime',['../group___win_std_e_a_p_a_p_i.html#gabd2665596cc49191b36e6378147c47ad',1,'winstd']]], ['eap_5ferror_2',['eap_error',['../group___win_std_e_a_p_a_p_i.html#ga910edec3d3d1ba4f6f306dcafdc2117a',1,'winstd']]], ['eap_5ferror_5fruntime_3',['eap_error_runtime',['../group___win_std_e_a_p_a_p_i.html#ga102f6e28f2ae479af7b6555894f110ac',1,'winstd']]], - ['error_5ftype_4',['error_type',['../classwinstd_1_1num__runtime__error.html#a6fa2de87d0151b3ad9cac58f838852e0',1,'winstd::num_runtime_error']]], + ['error_5ftype_4',['error_type',['../classwinstd_1_1num__runtime__error.html#ac251f4b79b67a800dcd108fedb58d5b5',1,'winstd::num_runtime_error']]], ['event_5',['event',['../group___win_std_win_a_p_i.html#ga8aad78395ff021f46a34e51816038d20',1,'winstd']]] ]; diff --git a/search/typedefs_5.js b/search/typedefs_5.js index 1bc908e5..f87c5469 100644 --- a/search/typedefs_5.js +++ b/search/typedefs_5.js @@ -1,4 +1,4 @@ var searchData= [ - ['handle_5ftype_0',['handle_type',['../classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81',1,'winstd::handle']]] + ['handle_5ftype_0',['handle_type',['../classwinstd_1_1handle.html#ae5faed333075739a27c99372967e01a6',1,'winstd::handle']]] ]; diff --git a/search/typedefs_7.js b/search/typedefs_7.js index 928b79cd..54bc1b3b 100644 --- a/search/typedefs_7.js +++ b/search/typedefs_7.js @@ -1,4 +1,4 @@ var searchData= [ - ['other_0',['other',['../structwinstd_1_1sanitizing__allocator_1_1rebind.html#a6a195ba8f7b42d8e82304efb08e18679',1,'winstd::sanitizing_allocator::rebind::other'],['../structwinstd_1_1heap__allocator_1_1rebind.html#a7916519ada01914c23461a64334ff331',1,'winstd::heap_allocator::rebind::other']]] + ['other_0',['other',['../structwinstd_1_1sanitizing__allocator_1_1rebind.html#a2d4d74770f232a074979281e0797a9b8',1,'winstd::sanitizing_allocator::rebind::other'],['../structwinstd_1_1heap__allocator_1_1rebind.html#ad853be2b0525325c1ab42acd1fe154c4',1,'winstd::heap_allocator::rebind::other']]] ]; diff --git a/search/typedefs_8.js b/search/typedefs_8.js index 75272730..e5c64d13 100644 --- a/search/typedefs_8.js +++ b/search/typedefs_8.js @@ -1,6 +1,6 @@ var searchData= [ - ['pointer_0',['pointer',['../classwinstd_1_1heap__allocator.html#ae04bc3ff970d32e6a2967072efdb06cd',1,'winstd::heap_allocator']]], + ['pointer_0',['pointer',['../classwinstd_1_1heap__allocator.html#a1dfe27a9db16c1266f780c82ba452f07',1,'winstd::heap_allocator']]], ['process_1',['process',['../group___win_std_win_a_p_i.html#gac5db2a322de45a52343ca98bbec302df',1,'winstd']]], ['process_5fsnapshot_2',['process_snapshot',['../group___win_std_win_a_p_i.html#ga59cd7dece6bf5649013f07c929547e80',1,'winstd']]] ]; diff --git a/search/typedefs_9.js b/search/typedefs_9.js index 980e601b..71dabdd9 100644 --- a/search/typedefs_9.js +++ b/search/typedefs_9.js @@ -1,4 +1,4 @@ var searchData= [ - ['reference_0',['reference',['../classwinstd_1_1heap__allocator.html#a88ed8962cd0d64849119d7a11135b2d0',1,'winstd::heap_allocator']]] + ['reference_0',['reference',['../classwinstd_1_1heap__allocator.html#a5463552f710d210d3f8aa7f5fa756ef2',1,'winstd::heap_allocator']]] ]; diff --git a/search/typedefs_a.js b/search/typedefs_a.js index adbaa4e7..f994d9be 100644 --- a/search/typedefs_a.js +++ b/search/typedefs_a.js @@ -3,7 +3,7 @@ var searchData= ['sanitizing_5fstring_0',['sanitizing_string',['../group___win_std_mem_sanitize.html#gafaf527687e080349d49b51c2362c32e8',1,'winstd']]], ['sanitizing_5ftstring_1',['sanitizing_tstring',['../group___win_std_mem_sanitize.html#gaa149b89d04cc80c125023a14e241e8bd',1,'winstd']]], ['sanitizing_5fwstring_2',['sanitizing_wstring',['../group___win_std_mem_sanitize.html#ga57776f4affaac5040ba220302003eedc',1,'winstd']]], - ['size_5ftype_3',['size_type',['../classwinstd_1_1heap__allocator.html#a01815f4f9097b1447c7ddaa2de868f59',1,'winstd::heap_allocator']]], + ['size_5ftype_3',['size_type',['../classwinstd_1_1heap__allocator.html#ae67b85ffe695b1123df8ee811c241248',1,'winstd::heap_allocator']]], ['string_5fmsg_4',['string_msg',['../group___win_std_str_format.html#gae63195e25e08e2b3d9a9b9c2987f5740',1,'winstd']]], ['string_5fprintf_5',['string_printf',['../group___win_std_str_format.html#ga9dda7a9a763b666f6fe00c4c6626621d',1,'winstd']]] ]; diff --git a/search/typedefs_c.js b/search/typedefs_c.js index 898d7dbc..cb6a40fc 100644 --- a/search/typedefs_c.js +++ b/search/typedefs_c.js @@ -1,4 +1,4 @@ var searchData= [ - ['value_5ftype_0',['value_type',['../classwinstd_1_1heap__allocator.html#a091ba3fb46ee75b8350c3fa9e6277c57',1,'winstd::heap_allocator']]] + ['value_5ftype_0',['value_type',['../classwinstd_1_1heap__allocator.html#a0c6321f6e2523857b9ca0638651ee545',1,'winstd::heap_allocator']]] ]; diff --git a/structwinstd_1_1_co_task_mem_free__delete-members.html b/structwinstd_1_1_co_task_mem_free__delete-members.html index 4b8860ce..41601b9d 100644 --- a/structwinstd_1_1_co_task_mem_free__delete-members.html +++ b/structwinstd_1_1_co_task_mem_free__delete-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@ - + + + +
winstd::CoTaskMemFree_delete Member List
@@ -87,7 +100,8 @@
+ diff --git a/structwinstd_1_1_co_task_mem_free__delete.html b/structwinstd_1_1_co_task_mem_free__delete.html index d1cbe07b..d3935687 100644 --- a/structwinstd_1_1_co_task_mem_free__delete.html +++ b/structwinstd_1_1_co_task_mem_free__delete.html @@ -3,13 +3,15 @@ - + WinStd: winstd::CoTaskMemFree_delete Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -91,11 +104,11 @@

Public Member Functions

CoTaskMemFree_delete () noexceptCoTaskMemFree_delete () noexcept  Default constructor.
  -template<class _T > -void operator() (_T *_Ptr) const +template<class _T > +void operator() (_T *_Ptr) const  Delete a pointer.
  @@ -108,15 +121,15 @@

+template<class _T >
- + - +
void winstd::CoTaskMemFree_delete::operator() void winstd::CoTaskMemFree_delete::operator() (_T * _Ptr)_T * _Ptr) const
@@ -138,7 +151,8 @@

+ diff --git a/structwinstd_1_1_cred_free__delete-members.html b/structwinstd_1_1_cred_free__delete-members.html index 99b0e60f..7aec33aa 100644 --- a/structwinstd_1_1_cred_free__delete-members.html +++ b/structwinstd_1_1_cred_free__delete-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + +
+
winstd::CredFree_delete< _Ty > Member List
@@ -82,14 +95,15 @@

This is the complete list of members for winstd::CredFree_delete< _Ty >, including all inherited members.

- +
_Myt typedefwinstd::CredFree_delete< _Ty >
_Myt typedefwinstd::CredFree_delete< _Ty >
CredFree_delete()winstd::CredFree_delete< _Ty >inline
CredFree_delete(const CredFree_delete< _Ty2 > &)winstd::CredFree_delete< _Ty >inline
operator()(_Ty *_Ptr) constwinstd::CredFree_delete< _Ty >inline
+
diff --git a/structwinstd_1_1_cred_free__delete.html b/structwinstd_1_1_cred_free__delete.html index cbabe4d5..e96b20aa 100644 --- a/structwinstd_1_1_cred_free__delete.html +++ b/structwinstd_1_1_cred_free__delete.html @@ -3,13 +3,15 @@ - + WinStd: winstd::CredFree_delete< _Ty > Struct Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Types | @@ -91,10 +104,10 @@ - - - + + +

Public Types

-typedef CredFree_delete< _Ty_Myt
 This type.
 
+typedef CredFree_delete< _Ty > _Myt
 This type.
 
@@ -103,16 +116,16 @@ - +template<class _Ty2 > + - +

Public Member Functions

 Default construct.
 
-template<class _Ty2 >
 CredFree_delete (const CredFree_delete< _Ty2 > &)
 CredFree_delete (const CredFree_delete< _Ty2 > &)
 Construct from another CredFree_delete.
 
void operator() (_Ty *_Ptr) const
void operator() (_Ty *_Ptr) const
 Delete a pointer.
 

Detailed Description

-
template<class _Ty>
+
template<class _Ty>
struct winstd::CredFree_delete< _Ty >

Deleter for unique_ptr using CredFree.

Member Function Documentation

@@ -121,15 +134,15 @@

+template<class _Ty >
- + - +
void winstd::CredFree_delete< _Ty >::operator() void winstd::CredFree_delete< _Ty >::operator() (_Ty * _Ptr)_Ty * _Ptr) const
@@ -151,7 +164,8 @@

+ diff --git a/structwinstd_1_1_cred_free__delete_3_01___ty_0f_0e_4-members.html b/structwinstd_1_1_cred_free__delete_3_01___ty_0f_0e_4-members.html index 0712889d..9418cfbd 100644 --- a/structwinstd_1_1_cred_free__delete_3_01___ty_0f_0e_4-members.html +++ b/structwinstd_1_1_cred_free__delete_3_01___ty_0f_0e_4-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + +
+
winstd::CredFree_delete< _Ty[]> Member List
@@ -82,14 +95,15 @@

This is the complete list of members for winstd::CredFree_delete< _Ty[]>, including all inherited members.

- +
_Myt typedefwinstd::CredFree_delete< _Ty[]>
_Myt typedefwinstd::CredFree_delete< _Ty[]>
CredFree_delete()winstd::CredFree_delete< _Ty[]>inline
operator()(_Ty *_Ptr) const noexceptwinstd::CredFree_delete< _Ty[]>inline
operator()(_Other *) constwinstd::CredFree_delete< _Ty[]>inline
+
diff --git a/structwinstd_1_1_cred_free__delete_3_01___ty_0f_0e_4.html b/structwinstd_1_1_cred_free__delete_3_01___ty_0f_0e_4.html index f419d0db..1bee34a5 100644 --- a/structwinstd_1_1_cred_free__delete_3_01___ty_0f_0e_4.html +++ b/structwinstd_1_1_cred_free__delete_3_01___ty_0f_0e_4.html @@ -3,13 +3,15 @@ - + WinStd: winstd::CredFree_delete< _Ty[]> Struct Template Reference + + @@ -32,23 +34,33 @@
- + + +
+
Public Types | @@ -91,10 +104,10 @@ - - - + + +

Public Types

-typedef CredFree_delete< _Ty_Myt
 This type.
 
+typedef CredFree_delete< _Ty > _Myt
 This type.
 
@@ -102,16 +115,16 @@   - + - - + +

Public Member Functions

CredFree_delete ()
 Default construct.
 
void operator() (_Ty *_Ptr) const noexcept
void operator() (_Ty *_Ptr) const noexcept
 Delete a pointer.
 
template<class _Other >
void operator() (_Other *) const
template<class _Other >
void operator() (_Other *) const
 Delete a pointer of another type.
 

Detailed Description

-
template<class _Ty>
+
template<class _Ty>
struct winstd::CredFree_delete< _Ty[]>

Deleter for unique_ptr to array of unknown size using CredFree.

Member Function Documentation

@@ -120,17 +133,17 @@

+template<class _Ty >
-template<class _Other >
+template<class _Other >

- + - +
void winstd::CredFree_delete< _Ty[]>::operator() void winstd::CredFree_delete< _Ty[]>::operator() (_Other * )_Other * ) const
@@ -152,15 +165,15 @@

+template<class _Ty >
- + - +
void winstd::CredFree_delete< _Ty[]>::operator() void winstd::CredFree_delete< _Ty[]>::operator() (_Ty * _Ptr)_Ty * _Ptr) const
@@ -182,7 +195,8 @@

+ diff --git a/structwinstd_1_1_eap_host_peer_free_eap_error__delete-members.html b/structwinstd_1_1_eap_host_peer_free_eap_error__delete-members.html index b8ca8d15..7da1464a 100644 --- a/structwinstd_1_1_eap_host_peer_free_eap_error__delete-members.html +++ b/structwinstd_1_1_eap_host_peer_free_eap_error__delete-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + + +
winstd::EapHostPeerFreeEapError_delete Member List
@@ -87,7 +100,8 @@

+
diff --git a/structwinstd_1_1_eap_host_peer_free_eap_error__delete.html b/structwinstd_1_1_eap_host_peer_free_eap_error__delete.html index 97ff4031..6481962b 100644 --- a/structwinstd_1_1_eap_host_peer_free_eap_error__delete.html +++ b/structwinstd_1_1_eap_host_peer_free_eap_error__delete.html @@ -3,13 +3,15 @@ - + WinStd: winstd::EapHostPeerFreeEapError_delete Struct Reference + + @@ -32,23 +34,33 @@
- + + +
+
Public Member Functions | @@ -91,10 +104,10 @@

Public Member Functions

EapHostPeerFreeEapError_delete () noexceptEapHostPeerFreeEapError_delete () noexcept  Default constructor.
  -void operator() (EAP_ERROR *_Ptr) const noexcept +void operator() (EAP_ERROR *_Ptr) const noexcept  Delete a pointer.
  @@ -111,9 +124,9 @@

- + - +
void winstd::EapHostPeerFreeEapError_delete::operator() void winstd::EapHostPeerFreeEapError_delete::operator() (EAP_ERROR * _Ptr)EAP_ERROR * _Ptr) const
@@ -135,7 +148,8 @@

+

diff --git a/structwinstd_1_1_eap_host_peer_free_error_memory__delete-members.html b/structwinstd_1_1_eap_host_peer_free_error_memory__delete-members.html index 5efaba03..ba4cade0 100644 --- a/structwinstd_1_1_eap_host_peer_free_error_memory__delete-members.html +++ b/structwinstd_1_1_eap_host_peer_free_error_memory__delete-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::EapHostPeerFreeErrorMemory_delete Member List
@@ -87,7 +100,8 @@
+ diff --git a/structwinstd_1_1_eap_host_peer_free_error_memory__delete.html b/structwinstd_1_1_eap_host_peer_free_error_memory__delete.html index b163906d..0733fea4 100644 --- a/structwinstd_1_1_eap_host_peer_free_error_memory__delete.html +++ b/structwinstd_1_1_eap_host_peer_free_error_memory__delete.html @@ -3,13 +3,15 @@ - + WinStd: winstd::EapHostPeerFreeErrorMemory_delete Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -91,10 +104,10 @@

Public Member Functions

EapHostPeerFreeErrorMemory_delete () noexceptEapHostPeerFreeErrorMemory_delete () noexcept  Default constructor.
  -void operator() (EAP_ERROR *_Ptr) const noexcept +void operator() (EAP_ERROR *_Ptr) const noexcept  Delete a pointer.
  @@ -111,9 +124,9 @@

- + - +
void winstd::EapHostPeerFreeErrorMemory_delete::operator() void winstd::EapHostPeerFreeErrorMemory_delete::operator() (EAP_ERROR * _Ptr)EAP_ERROR * _Ptr) const
@@ -135,7 +148,8 @@

+

diff --git a/structwinstd_1_1_eap_host_peer_free_memory__delete-members.html b/structwinstd_1_1_eap_host_peer_free_memory__delete-members.html index 43613bfd..664d6249 100644 --- a/structwinstd_1_1_eap_host_peer_free_memory__delete-members.html +++ b/structwinstd_1_1_eap_host_peer_free_memory__delete-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::EapHostPeerFreeMemory_delete Member List
@@ -87,7 +100,8 @@
+ diff --git a/structwinstd_1_1_eap_host_peer_free_memory__delete.html b/structwinstd_1_1_eap_host_peer_free_memory__delete.html index 20f02a68..8e1475be 100644 --- a/structwinstd_1_1_eap_host_peer_free_memory__delete.html +++ b/structwinstd_1_1_eap_host_peer_free_memory__delete.html @@ -3,13 +3,15 @@ - + WinStd: winstd::EapHostPeerFreeMemory_delete Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -91,11 +104,11 @@

Public Member Functions

EapHostPeerFreeMemory_delete () noexceptEapHostPeerFreeMemory_delete () noexcept  Default constructor.
  -template<class _T > -void operator() (_T *_Ptr) const +template<class _T > +void operator() (_T *_Ptr) const  Delete a pointer.
  @@ -108,15 +121,15 @@

+template<class _T >
- + - +
void winstd::EapHostPeerFreeMemory_delete::operator() void winstd::EapHostPeerFreeMemory_delete::operator() (_T * _Ptr)_T * _Ptr) const
@@ -138,7 +151,8 @@

+ diff --git a/structwinstd_1_1_eap_host_peer_free_runtime_memory__delete-members.html b/structwinstd_1_1_eap_host_peer_free_runtime_memory__delete-members.html index de9de4a0..ba757d88 100644 --- a/structwinstd_1_1_eap_host_peer_free_runtime_memory__delete-members.html +++ b/structwinstd_1_1_eap_host_peer_free_runtime_memory__delete-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + +
+
winstd::EapHostPeerFreeRuntimeMemory_delete Member List
@@ -87,7 +100,8 @@
+
diff --git a/structwinstd_1_1_eap_host_peer_free_runtime_memory__delete.html b/structwinstd_1_1_eap_host_peer_free_runtime_memory__delete.html index 67cd8d01..9272d02a 100644 --- a/structwinstd_1_1_eap_host_peer_free_runtime_memory__delete.html +++ b/structwinstd_1_1_eap_host_peer_free_runtime_memory__delete.html @@ -3,13 +3,15 @@ - + WinStd: winstd::EapHostPeerFreeRuntimeMemory_delete Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -91,12 +104,12 @@

Public Member Functions

EapHostPeerFreeRuntimeMemory_delete () noexceptEapHostPeerFreeRuntimeMemory_delete () noexcept  Default constructor.
  -template<class _T > -void operator() (_T *_Ptr) const +template<class _T > +void operator() (_T *_Ptr) const  Delete a pointer.
  @@ -108,7 +121,8 @@
+
diff --git a/structwinstd_1_1_global_free__delete-members.html b/structwinstd_1_1_global_free__delete-members.html index 802d8640..c737d09f 100644 --- a/structwinstd_1_1_global_free__delete-members.html +++ b/structwinstd_1_1_global_free__delete-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + + +
winstd::GlobalFree_delete Member List
@@ -87,7 +100,8 @@
+ diff --git a/structwinstd_1_1_global_free__delete.html b/structwinstd_1_1_global_free__delete.html index 000728df..e077241a 100644 --- a/structwinstd_1_1_global_free__delete.html +++ b/structwinstd_1_1_global_free__delete.html @@ -3,13 +3,15 @@ - + WinStd: winstd::GlobalFree_delete Struct Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Member Functions | @@ -94,7 +107,7 @@  GlobalFree_delete ()  Default construct.
  -void operator() (HGLOBAL _Ptr) const +void operator() (HGLOBAL _Ptr) const  Delete a pointer.
  @@ -111,9 +124,9 @@

- + - +
void winstd::GlobalFree_delete::operator() void winstd::GlobalFree_delete::operator() (HGLOBAL _Ptr)HGLOBAL _Ptr) const
@@ -135,7 +148,8 @@

+

diff --git a/structwinstd_1_1_local_free__delete-members.html b/structwinstd_1_1_local_free__delete-members.html index 96a461ec..78ddadf6 100644 --- a/structwinstd_1_1_local_free__delete-members.html +++ b/structwinstd_1_1_local_free__delete-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::LocalFree_delete< _Ty > Member List
@@ -82,14 +95,15 @@

This is the complete list of members for winstd::LocalFree_delete< _Ty >, including all inherited members.

- +
_Myt typedefwinstd::LocalFree_delete< _Ty >
_Myt typedefwinstd::LocalFree_delete< _Ty >
LocalFree_delete()winstd::LocalFree_delete< _Ty >inline
LocalFree_delete(const LocalFree_delete< _Ty2 > &)winstd::LocalFree_delete< _Ty >inline
operator()(_Ty *_Ptr) constwinstd::LocalFree_delete< _Ty >inline
+ diff --git a/structwinstd_1_1_local_free__delete.html b/structwinstd_1_1_local_free__delete.html index 6e52afa8..afb76593 100644 --- a/structwinstd_1_1_local_free__delete.html +++ b/structwinstd_1_1_local_free__delete.html @@ -3,13 +3,15 @@ - + WinStd: winstd::LocalFree_delete< _Ty > Struct Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Types | @@ -91,10 +104,10 @@ - - - + + +

Public Types

-typedef LocalFree_delete< _Ty_Myt
 This type.
 
+typedef LocalFree_delete< _Ty > _Myt
 This type.
 
@@ -103,16 +116,16 @@ - +template<class _Ty2 > + - +

Public Member Functions

 Default construct.
 
-template<class _Ty2 >
 LocalFree_delete (const LocalFree_delete< _Ty2 > &)
 LocalFree_delete (const LocalFree_delete< _Ty2 > &)
 Construct from another LocalFree_delete.
 
void operator() (_Ty *_Ptr) const
void operator() (_Ty *_Ptr) const
 Delete a pointer.
 

Detailed Description

-
template<class _Ty>
+
template<class _Ty>
struct winstd::LocalFree_delete< _Ty >

Deleter for unique_ptr using LocalFree.

Member Function Documentation

@@ -121,15 +134,15 @@

+template<class _Ty >
- + - +
void winstd::LocalFree_delete< _Ty >::operator() void winstd::LocalFree_delete< _Ty >::operator() (_Ty * _Ptr)_Ty * _Ptr) const
@@ -151,7 +164,8 @@

+ diff --git a/structwinstd_1_1_local_free__delete_3_01___ty_0f_0e_4-members.html b/structwinstd_1_1_local_free__delete_3_01___ty_0f_0e_4-members.html index 6400e1f9..4987816a 100644 --- a/structwinstd_1_1_local_free__delete_3_01___ty_0f_0e_4-members.html +++ b/structwinstd_1_1_local_free__delete_3_01___ty_0f_0e_4-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + +
+
winstd::LocalFree_delete< _Ty[]> Member List
@@ -82,14 +95,15 @@

This is the complete list of members for winstd::LocalFree_delete< _Ty[]>, including all inherited members.

- +
_Myt typedefwinstd::LocalFree_delete< _Ty[]>
_Myt typedefwinstd::LocalFree_delete< _Ty[]>
LocalFree_delete() noexceptwinstd::LocalFree_delete< _Ty[]>inline
operator()(_Ty *_Ptr) const noexceptwinstd::LocalFree_delete< _Ty[]>inline
operator()(_Other *) constwinstd::LocalFree_delete< _Ty[]>inline
+
diff --git a/structwinstd_1_1_local_free__delete_3_01___ty_0f_0e_4.html b/structwinstd_1_1_local_free__delete_3_01___ty_0f_0e_4.html index cbfd6787..01ec6b52 100644 --- a/structwinstd_1_1_local_free__delete_3_01___ty_0f_0e_4.html +++ b/structwinstd_1_1_local_free__delete_3_01___ty_0f_0e_4.html @@ -3,13 +3,15 @@ - + WinStd: winstd::LocalFree_delete< _Ty[]> Struct Template Reference + + @@ -32,23 +34,33 @@
- + + +
+
Public Types | @@ -91,28 +104,28 @@ - - - + + +

Public Types

-typedef LocalFree_delete< _Ty_Myt
 This type.
 
+typedef LocalFree_delete< _Ty > _Myt
 This type.
 
+  +void  - - + +

Public Member Functions

LocalFree_delete () noexcept
LocalFree_delete () noexcept
 Default construct.
 
-void operator() (_Ty *_Ptr) const noexcept
operator() (_Ty *_Ptr) const noexcept
 Delete a pointer.
 
template<class _Other >
void operator() (_Other *) const
template<class _Other >
void operator() (_Other *) const
 Delete a pointer of another type.
 

Detailed Description

-
template<class _Ty>
+
template<class _Ty>
struct winstd::LocalFree_delete< _Ty[]>

Deleter for unique_ptr to array of unknown size using LocalFree.

Member Function Documentation

@@ -121,17 +134,17 @@

+template<class _Ty >
-template<class _Other >
+template<class _Other >

- + - +
void winstd::LocalFree_delete< _Ty[]>::operator() void winstd::LocalFree_delete< _Ty[]>::operator() (_Other * )_Other * ) const
@@ -153,7 +166,8 @@

+ diff --git a/structwinstd_1_1_unmap_view_of_file__delete-members.html b/structwinstd_1_1_unmap_view_of_file__delete-members.html index f20874f8..a8b4ce9a 100644 --- a/structwinstd_1_1_unmap_view_of_file__delete-members.html +++ b/structwinstd_1_1_unmap_view_of_file__delete-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@

- + + +
+
winstd::UnmapViewOfFile_delete Member List
@@ -86,7 +99,8 @@
+
diff --git a/structwinstd_1_1_unmap_view_of_file__delete.html b/structwinstd_1_1_unmap_view_of_file__delete.html index eb01aff7..ec5f600a 100644 --- a/structwinstd_1_1_unmap_view_of_file__delete.html +++ b/structwinstd_1_1_unmap_view_of_file__delete.html @@ -3,13 +3,15 @@ - + WinStd: winstd::UnmapViewOfFile_delete Struct Reference + + @@ -32,23 +34,33 @@
- + + + +
Public Member Functions | @@ -91,7 +104,7 @@

Public Member Functions

-void operator() (void *_Ptr) const +void operator() (void *_Ptr) const  Delete a pointer.
  @@ -103,7 +116,8 @@
+
diff --git a/structwinstd_1_1_wlan_free_memory__delete-members.html b/structwinstd_1_1_wlan_free_memory__delete-members.html index e41ef9bb..2aeab29d 100644 --- a/structwinstd_1_1_wlan_free_memory__delete-members.html +++ b/structwinstd_1_1_wlan_free_memory__delete-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + + +
winstd::WlanFreeMemory_delete< _Ty > Member List
@@ -82,14 +95,15 @@

This is the complete list of members for winstd::WlanFreeMemory_delete< _Ty >, including all inherited members.

- +
_Myt typedefwinstd::WlanFreeMemory_delete< _Ty >
_Myt typedefwinstd::WlanFreeMemory_delete< _Ty >
operator()(_Ty *_Ptr) constwinstd::WlanFreeMemory_delete< _Ty >inline
WlanFreeMemory_delete()winstd::WlanFreeMemory_delete< _Ty >inline
WlanFreeMemory_delete(const WlanFreeMemory_delete< _Ty2 > &)winstd::WlanFreeMemory_delete< _Ty >inline
+ diff --git a/structwinstd_1_1_wlan_free_memory__delete.html b/structwinstd_1_1_wlan_free_memory__delete.html index 845f3efe..3a1977bb 100644 --- a/structwinstd_1_1_wlan_free_memory__delete.html +++ b/structwinstd_1_1_wlan_free_memory__delete.html @@ -3,13 +3,15 @@ - + WinStd: winstd::WlanFreeMemory_delete< _Ty > Struct Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Types | @@ -91,10 +104,10 @@ - - - + + +

Public Types

-typedef WlanFreeMemory_delete< _Ty_Myt
 This type.
 
+typedef WlanFreeMemory_delete< _Ty > _Myt
 This type.
 
@@ -103,17 +116,17 @@ - +template<class _Ty2 > + +void 

Public Member Functions

 Default construct.
 
-template<class _Ty2 >
 WlanFreeMemory_delete (const WlanFreeMemory_delete< _Ty2 > &)
 WlanFreeMemory_delete (const WlanFreeMemory_delete< _Ty2 > &)
 Construct from another WlanFreeMemory_delete.
 
-void operator() (_Ty *_Ptr) const
operator() (_Ty *_Ptr) const
 Delete a pointer.
 

Detailed Description

-
template<class _Ty>
+
template<class _Ty>
struct winstd::WlanFreeMemory_delete< _Ty >

Deleter for unique_ptr using WlanFreeMemory.


The documentation for this struct was generated from the following file:
  • include/WinStd/WLAN.h
  • @@ -121,7 +134,8 @@
+
diff --git a/structwinstd_1_1_wlan_free_memory__delete_3_01___ty_0f_0e_4-members.html b/structwinstd_1_1_wlan_free_memory__delete_3_01___ty_0f_0e_4-members.html index c45f5a7f..25d35398 100644 --- a/structwinstd_1_1_wlan_free_memory__delete_3_01___ty_0f_0e_4-members.html +++ b/structwinstd_1_1_wlan_free_memory__delete_3_01___ty_0f_0e_4-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::WlanFreeMemory_delete< _Ty[]> Member List
@@ -82,14 +95,15 @@

This is the complete list of members for winstd::WlanFreeMemory_delete< _Ty[]>, including all inherited members.

- +
_Myt typedefwinstd::WlanFreeMemory_delete< _Ty[]>
_Myt typedefwinstd::WlanFreeMemory_delete< _Ty[]>
operator()(_Ty *_Ptr) constwinstd::WlanFreeMemory_delete< _Ty[]>inline
operator()(_Other *) constwinstd::WlanFreeMemory_delete< _Ty[]>inline
WlanFreeMemory_delete()winstd::WlanFreeMemory_delete< _Ty[]>inline
+
diff --git a/structwinstd_1_1_wlan_free_memory__delete_3_01___ty_0f_0e_4.html b/structwinstd_1_1_wlan_free_memory__delete_3_01___ty_0f_0e_4.html index 8a4b71d5..6e54dfb5 100644 --- a/structwinstd_1_1_wlan_free_memory__delete_3_01___ty_0f_0e_4.html +++ b/structwinstd_1_1_wlan_free_memory__delete_3_01___ty_0f_0e_4.html @@ -3,13 +3,15 @@ - + WinStd: winstd::WlanFreeMemory_delete< _Ty[]> Struct Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Types | @@ -91,10 +104,10 @@ - - - + + +

Public Types

-typedef WlanFreeMemory_delete< _Ty_Myt
 This type.
 
+typedef WlanFreeMemory_delete< _Ty > _Myt
 This type.
 
@@ -103,17 +116,17 @@ +void  - +template<class _Other > +

Public Member Functions

 Default construct.
 
-void operator() (_Ty *_Ptr) const
operator() (_Ty *_Ptr) const
 Delete a pointer.
 
-template<class _Other >
void operator() (_Other *) const
void operator() (_Other *) const
 Delete a pointer of another type.
 

Detailed Description

-
template<class _Ty>
+
template<class _Ty>
struct winstd::WlanFreeMemory_delete< _Ty[]>

Deleter for unique_ptr to array of unknown size using WlanFreeMemory.


The documentation for this struct was generated from the following file:
  • include/WinStd/WLAN.h
  • @@ -121,7 +134,8 @@
+
diff --git a/structwinstd_1_1heap__allocator_1_1rebind-members.html b/structwinstd_1_1heap__allocator_1_1rebind-members.html index c75f4a11..9e26de1f 100644 --- a/structwinstd_1_1heap__allocator_1_1rebind-members.html +++ b/structwinstd_1_1heap__allocator_1_1rebind-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::heap_allocator< _Ty >::rebind< _Other > Member List
@@ -82,11 +95,12 @@

This is the complete list of members for winstd::heap_allocator< _Ty >::rebind< _Other >, including all inherited members.

- +
other typedefwinstd::heap_allocator< _Ty >::rebind< _Other >
other typedefwinstd::heap_allocator< _Ty >::rebind< _Other >
+
diff --git a/structwinstd_1_1heap__allocator_1_1rebind.html b/structwinstd_1_1heap__allocator_1_1rebind.html index d5abc9fe..d1ab5027 100644 --- a/structwinstd_1_1heap__allocator_1_1rebind.html +++ b/structwinstd_1_1heap__allocator_1_1rebind.html @@ -3,13 +3,15 @@ - + WinStd: winstd::heap_allocator< _Ty >::rebind< _Other > Struct Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Types | @@ -90,14 +103,14 @@ - - - + + +

Public Types

-typedef heap_allocator< _Otherother
 Other allocator type.
 
+typedef heap_allocator< _Other > other
 Other allocator type.
 

Detailed Description

-
template<class _Ty>
-template<class _Other>
+
template<class _Ty>
+template<class _Other>
struct winstd::heap_allocator< _Ty >::rebind< _Other >

A structure that enables an allocator for objects of one type to allocate storage for objects of another type.


The documentation for this struct was generated from the following file:
  • include/WinStd/Win.h
  • @@ -105,7 +118,8 @@
+
diff --git a/structwinstd_1_1sanitizing__allocator_1_1rebind-members.html b/structwinstd_1_1sanitizing__allocator_1_1rebind-members.html index f5d859eb..c909a8f9 100644 --- a/structwinstd_1_1sanitizing__allocator_1_1rebind-members.html +++ b/structwinstd_1_1sanitizing__allocator_1_1rebind-members.html @@ -3,13 +3,15 @@ - + WinStd: Member List + + @@ -32,23 +34,33 @@
- + + +
+
winstd::sanitizing_allocator< _Ty >::rebind< _Other > Member List
@@ -82,11 +95,12 @@

This is the complete list of members for winstd::sanitizing_allocator< _Ty >::rebind< _Other >, including all inherited members.

- +
other typedefwinstd::sanitizing_allocator< _Ty >::rebind< _Other >
other typedefwinstd::sanitizing_allocator< _Ty >::rebind< _Other >
+
diff --git a/structwinstd_1_1sanitizing__allocator_1_1rebind.html b/structwinstd_1_1sanitizing__allocator_1_1rebind.html index 4fd9db7e..aa8b6ea3 100644 --- a/structwinstd_1_1sanitizing__allocator_1_1rebind.html +++ b/structwinstd_1_1sanitizing__allocator_1_1rebind.html @@ -3,13 +3,15 @@ - + WinStd: winstd::sanitizing_allocator< _Ty >::rebind< _Other > Struct Template Reference + + @@ -32,23 +34,33 @@ - + + + +
Public Types | @@ -90,14 +103,14 @@ - - - + + +

Public Types

-typedef sanitizing_allocator< _Otherother
 Other type.
 
+typedef sanitizing_allocator< _Other > other
 Other type.
 

Detailed Description

-
template<class _Ty>
-template<class _Other>
+
template<class _Ty>
+template<class _Other>
struct winstd::sanitizing_allocator< _Ty >::rebind< _Other >

Convert this type to sanitizing_allocator<_Other>


The documentation for this struct was generated from the following file:
  • include/WinStd/Common.h
  • @@ -105,7 +118,8 @@
+
diff --git a/tabs.css b/tabs.css index fe4854aa..7fa4268a 100644 --- a/tabs.css +++ b/tabs.css @@ -1 +1 @@ -.sm{position:relative;z-index:9999}.sm,.sm ul,.sm li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;-webkit-tap-highlight-color:rgba(0,0,0,0)}.sm-rtl,.sm-rtl ul,.sm-rtl li{direction:rtl;text-align:right}.sm>li>h1,.sm>li>h2,.sm>li>h3,.sm>li>h4,.sm>li>h5,.sm>li>h6{margin:0;padding:0}.sm ul{display:none}.sm li,.sm a{position:relative}.sm a{display:block}.sm a.disabled{cursor:not-allowed}.sm:after{content:"\00a0";display:block;height:0;font:0/0 serif;clear:both;visibility:hidden;overflow:hidden}.sm,.sm *,.sm *:before,.sm *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.main-menu-btn{position:relative;display:inline-block;width:36px;height:36px;text-indent:36px;margin-left:8px;white-space:nowrap;overflow:hidden;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0)}.main-menu-btn-icon,.main-menu-btn-icon:before,.main-menu-btn-icon:after{position:absolute;top:50%;left:2px;height:2px;width:24px;background:var(--nav-menu-button-color);-webkit-transition:all .25s;transition:all .25s}.main-menu-btn-icon:before{content:'';top:-7px;left:0}.main-menu-btn-icon:after{content:'';top:7px;left:0}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon{height:0}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:before{top:0;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:after{top:0;-webkit-transform:rotate(45deg);transform:rotate(45deg)}#main-menu-state{position:absolute;width:1px;height:1px;margin:-1px;border:0;padding:0;overflow:hidden;clip:rect(1px,1px,1px,1px)}#main-menu-state:not(:checked) ~ #main-menu{display:none}#main-menu-state:checked ~ #main-menu{display:block}@media(min-width:768px){.main-menu-btn{position:absolute;top:-99999px}#main-menu-state:not(:checked) ~ #main-menu{display:block}}.sm-dox{background-image:var(--nav-gradient-image)}.sm-dox a,.sm-dox a:focus,.sm-dox a:hover,.sm-dox a:active{padding:0 12px;padding-right:43px;font-family:var(--font-family-nav);font-size:13px;font-weight:bold;line-height:36px;text-decoration:none;text-shadow:var(--nav-text-normal-shadow);color:var(--nav-text-normal-color);outline:0}.sm-dox a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:var(--nav-text-hover-shadow)}.sm-dox a.current{color:#d23600}.sm-dox a.disabled{color:#bbb}.sm-dox a span.sub-arrow{position:absolute;top:50%;margin-top:-14px;left:auto;right:3px;width:28px;height:28px;overflow:hidden;font:bold 12px/28px monospace !important;text-align:center;text-shadow:none;background:var(--nav-menu-toggle-color);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox a span.sub-arrow:before{display:block;content:'+'}.sm-dox a.highlighted span.sub-arrow:before{display:block;content:'-'}.sm-dox>li:first-child>a,.sm-dox>li:first-child>:not(ul) a{-moz-border-radius:5px 5px 0 0;-webkit-border-radius:5px;border-radius:5px 5px 0 0}.sm-dox>li:last-child>a,.sm-dox>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul{-moz-border-radius:0 0 5px 5px;-webkit-border-radius:0;border-radius:0 0 5px 5px}.sm-dox>li:last-child>a.highlighted,.sm-dox>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox ul{background:var(--nav-menu-background-color)}.sm-dox ul a,.sm-dox ul a:focus,.sm-dox ul a:hover,.sm-dox ul a:active{font-size:12px;border-left:8px solid transparent;line-height:36px;text-shadow:none;background-color:var(--nav-menu-background-color);background-image:none}.sm-dox ul a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:0 1px 1px black}.sm-dox ul ul a,.sm-dox ul ul a:hover,.sm-dox ul ul a:focus,.sm-dox ul ul a:active{border-left:16px solid transparent}.sm-dox ul ul ul a,.sm-dox ul ul ul a:hover,.sm-dox ul ul ul a:focus,.sm-dox ul ul ul a:active{border-left:24px solid transparent}.sm-dox ul ul ul ul a,.sm-dox ul ul ul ul a:hover,.sm-dox ul ul ul ul a:focus,.sm-dox ul ul ul ul a:active{border-left:32px solid transparent}.sm-dox ul ul ul ul ul a,.sm-dox ul ul ul ul ul a:hover,.sm-dox ul ul ul ul ul a:focus,.sm-dox ul ul ul ul ul a:active{border-left:40px solid transparent}@media(min-width:768px){.sm-dox ul{position:absolute;width:12em}.sm-dox li{float:left}.sm-dox.sm-rtl li{float:right}.sm-dox ul li,.sm-dox.sm-rtl ul li,.sm-dox.sm-vertical li{float:none}.sm-dox a{white-space:nowrap}.sm-dox ul a,.sm-dox.sm-vertical a{white-space:normal}.sm-dox .sm-nowrap>li>a,.sm-dox .sm-nowrap>li>:not(ul) a{white-space:nowrap}.sm-dox{padding:0 10px;background-image:var(--nav-gradient-image);line-height:36px}.sm-dox a span.sub-arrow{top:50%;margin-top:-2px;right:12px;width:0;height:0;border-width:4px;border-style:solid dashed dashed dashed;border-color:var(--nav-text-normal-color) transparent transparent transparent;background:transparent;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox a,.sm-dox a:focus,.sm-dox a:active,.sm-dox a:hover,.sm-dox a.highlighted{padding:0 12px;background-image:var(--nav-separator-image);background-repeat:no-repeat;background-position:right;-moz-border-radius:0 !important;-webkit-border-radius:0;border-radius:0 !important}.sm-dox a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:var(--nav-text-hover-shadow)}.sm-dox a:hover span.sub-arrow{border-color:var(--nav-text-hover-color) transparent transparent transparent}.sm-dox a.has-submenu{padding-right:24px}.sm-dox li{border-top:0}.sm-dox>li>ul:before,.sm-dox>li>ul:after{content:'';position:absolute;top:-18px;left:30px;width:0;height:0;overflow:hidden;border-width:9px;border-style:dashed dashed solid dashed;border-color:transparent transparent #bbb transparent}.sm-dox>li>ul:after{top:-16px;left:31px;border-width:8px;border-color:transparent transparent var(--nav-menu-background-color) transparent}.sm-dox ul{border:1px solid #bbb;padding:5px 0;background:var(--nav-menu-background-color);-moz-border-radius:5px !important;-webkit-border-radius:5px;border-radius:5px !important;-moz-box-shadow:0 5px 9px rgba(0,0,0,0.2);-webkit-box-shadow:0 5px 9px rgba(0,0,0,0.2);box-shadow:0 5px 9px rgba(0,0,0,0.2)}.sm-dox ul a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent var(--nav-menu-foreground-color);border-style:dashed dashed dashed solid}.sm-dox ul a,.sm-dox ul a:hover,.sm-dox ul a:focus,.sm-dox ul a:active,.sm-dox ul a.highlighted{color:var(--nav-menu-foreground-color);background-image:none;border:0 !important}.sm-dox ul a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:var(--nav-text-hover-shadow)}.sm-dox ul a:hover span.sub-arrow{border-color:transparent transparent transparent var(--nav-text-hover-color)}.sm-dox span.scroll-up,.sm-dox span.scroll-down{position:absolute;display:none;visibility:hidden;overflow:hidden;background:var(--nav-menu-background-color);height:36px}.sm-dox span.scroll-up:hover,.sm-dox span.scroll-down:hover{background:#eee}.sm-dox span.scroll-up:hover span.scroll-up-arrow,.sm-dox span.scroll-up:hover span.scroll-down-arrow{border-color:transparent transparent #d23600 transparent}.sm-dox span.scroll-down:hover span.scroll-down-arrow{border-color:#d23600 transparent transparent transparent}.sm-dox span.scroll-up-arrow,.sm-dox span.scroll-down-arrow{position:absolute;top:0;left:50%;margin-left:-6px;width:0;height:0;overflow:hidden;border-width:6px;border-style:dashed dashed solid dashed;border-color:transparent transparent var(--nav-menu-foreground-color) transparent}.sm-dox span.scroll-down-arrow{top:8px;border-style:solid dashed dashed dashed;border-color:var(--nav-menu-foreground-color) transparent transparent transparent}.sm-dox.sm-rtl a.has-submenu{padding-right:12px;padding-left:24px}.sm-dox.sm-rtl a span.sub-arrow{right:auto;left:12px}.sm-dox.sm-rtl.sm-vertical a.has-submenu{padding:10px 20px}.sm-dox.sm-rtl.sm-vertical a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-rtl>li>ul:before{left:auto;right:30px}.sm-dox.sm-rtl>li>ul:after{left:auto;right:31px}.sm-dox.sm-rtl ul a.has-submenu{padding:10px 20px !important}.sm-dox.sm-rtl ul a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-vertical{padding:10px 0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox.sm-vertical a{padding:10px 20px}.sm-dox.sm-vertical a:hover,.sm-dox.sm-vertical a:focus,.sm-dox.sm-vertical a:active,.sm-dox.sm-vertical a.highlighted{background:#fff}.sm-dox.sm-vertical a.disabled{background-image:var(--nav-gradient-image)}.sm-dox.sm-vertical a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-style:dashed dashed dashed solid;border-color:transparent transparent transparent #555}.sm-dox.sm-vertical>li>ul:before,.sm-dox.sm-vertical>li>ul:after{display:none}.sm-dox.sm-vertical ul a{padding:10px 20px}.sm-dox.sm-vertical ul a:hover,.sm-dox.sm-vertical ul a:focus,.sm-dox.sm-vertical ul a:active,.sm-dox.sm-vertical ul a.highlighted{background:#eee}.sm-dox.sm-vertical ul a.disabled{background:var(--nav-menu-background-color)}} \ No newline at end of file +.sm{position:relative;z-index:9999}.sm,.sm ul,.sm li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;-webkit-tap-highlight-color:rgba(0,0,0,0)}.sm-rtl,.sm-rtl ul,.sm-rtl li{direction:rtl;text-align:right}.sm>li>h1,.sm>li>h2,.sm>li>h3,.sm>li>h4,.sm>li>h5,.sm>li>h6{margin:0;padding:0}.sm ul{display:none}.sm li,.sm a{position:relative}.sm a{display:block}.sm a.disabled{cursor:not-allowed}.sm:after{content:"\00a0";display:block;height:0;font:0/0 serif;clear:both;visibility:hidden;overflow:hidden}.sm,.sm *,.sm *:before,.sm *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.main-menu-btn{position:relative;display:inline-block;width:36px;height:36px;text-indent:36px;margin-left:8px;white-space:nowrap;overflow:hidden;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0)}.main-menu-btn-icon,.main-menu-btn-icon:before,.main-menu-btn-icon:after{position:absolute;top:50%;left:2px;height:2px;width:24px;background:var(--nav-menu-button-color);-webkit-transition:all .25s;transition:all .25s}.main-menu-btn-icon:before{content:'';top:-7px;left:0}.main-menu-btn-icon:after{content:'';top:7px;left:0}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon{height:0}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:before{top:0;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:after{top:0;-webkit-transform:rotate(45deg);transform:rotate(45deg)}#main-menu-state{position:absolute;width:1px;height:1px;margin:-1px;border:0;padding:0;overflow:hidden;clip:rect(1px,1px,1px,1px)}#main-menu-state:not(:checked) ~ #main-menu{display:none}#main-menu-state:checked ~ #main-menu{display:block}@media(min-width:768px){.main-menu-btn{position:absolute;top:-99999px}#main-menu-state:not(:checked) ~ #main-menu{display:block}}.sm-dox{background-image:var(--nav-gradient-image)}.sm-dox a,.sm-dox a:focus,.sm-dox a:hover,.sm-dox a:active{padding:0 12px;padding-right:43px;font-family:var(--font-family-nav);font-size:13px;font-weight:bold;line-height:36px;text-decoration:none;text-shadow:var(--nav-text-normal-shadow);color:var(--nav-text-normal-color);outline:0}.sm-dox a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:var(--nav-text-hover-shadow)}.sm-dox a.current{color:#d23600}.sm-dox a.disabled{color:#bbb}.sm-dox a span.sub-arrow{position:absolute;top:50%;margin-top:-14px;left:auto;right:3px;width:28px;height:28px;overflow:hidden;font:bold 12px/28px monospace !important;text-align:center;text-shadow:none;background:var(--nav-menu-toggle-color);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox a span.sub-arrow:before{display:block;content:'+'}.sm-dox a.highlighted span.sub-arrow:before{display:block;content:'-'}.sm-dox>li:first-child>a,.sm-dox>li:first-child>:not(ul) a{-moz-border-radius:5px 5px 0 0;-webkit-border-radius:5px;border-radius:5px 5px 0 0}.sm-dox>li:last-child>a,.sm-dox>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul{-moz-border-radius:0 0 5px 5px;-webkit-border-radius:0;border-radius:0 0 5px 5px}.sm-dox>li:last-child>a.highlighted,.sm-dox>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox ul{background:var(--nav-menu-background-color)}.sm-dox ul a,.sm-dox ul a:focus,.sm-dox ul a:hover,.sm-dox ul a:active{font-size:12px;border-left:8px solid transparent;line-height:36px;text-shadow:none;background-color:var(--nav-menu-background-color);background-image:none}.sm-dox ul a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:0 1px 1px black}.sm-dox ul ul a,.sm-dox ul ul a:hover,.sm-dox ul ul a:focus,.sm-dox ul ul a:active{border-left:16px solid transparent}.sm-dox ul ul ul a,.sm-dox ul ul ul a:hover,.sm-dox ul ul ul a:focus,.sm-dox ul ul ul a:active{border-left:24px solid transparent}.sm-dox ul ul ul ul a,.sm-dox ul ul ul ul a:hover,.sm-dox ul ul ul ul a:focus,.sm-dox ul ul ul ul a:active{border-left:32px solid transparent}.sm-dox ul ul ul ul ul a,.sm-dox ul ul ul ul ul a:hover,.sm-dox ul ul ul ul ul a:focus,.sm-dox ul ul ul ul ul a:active{border-left:40px solid transparent}@media(min-width:768px){.sm-dox ul{position:absolute;width:12em}.sm-dox li{float:left}.sm-dox.sm-rtl li{float:right}.sm-dox ul li,.sm-dox.sm-rtl ul li,.sm-dox.sm-vertical li{float:none}.sm-dox a{white-space:nowrap}.sm-dox ul a,.sm-dox.sm-vertical a{white-space:normal}.sm-dox .sm-nowrap>li>a,.sm-dox .sm-nowrap>li>:not(ul) a{white-space:nowrap}.sm-dox{padding:0 10px;background-image:var(--nav-gradient-image);line-height:36px}.sm-dox a span.sub-arrow{top:50%;margin-top:-2px;right:12px;width:0;height:0;border-width:4px;border-style:solid dashed dashed dashed;border-color:var(--nav-text-normal-color) transparent transparent transparent;background:transparent;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox a,.sm-dox a:focus,.sm-dox a:active,.sm-dox a:hover,.sm-dox a.highlighted{padding:0 12px;background-image:var(--nav-separator-image);background-repeat:no-repeat;background-position:right;-moz-border-radius:0 !important;-webkit-border-radius:0;border-radius:0 !important}.sm-dox a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:var(--nav-text-hover-shadow)}.sm-dox a:hover span.sub-arrow{border-color:var(--nav-text-hover-color) transparent transparent transparent}.sm-dox a.has-submenu{padding-right:24px}.sm-dox li{border-top:0}.sm-dox>li>ul:before,.sm-dox>li>ul:after{content:'';position:absolute;top:-18px;left:30px;width:0;height:0;overflow:hidden;border-width:9px;border-style:dashed dashed solid dashed;border-color:transparent transparent #bbb transparent}.sm-dox>li>ul:after{top:-16px;left:31px;border-width:8px;border-color:transparent transparent var(--nav-menu-background-color) transparent}.sm-dox ul{border:1px solid #bbb;padding:5px 0;background:var(--nav-menu-background-color);-moz-border-radius:5px !important;-webkit-border-radius:5px;border-radius:5px !important;-moz-box-shadow:0 5px 9px rgba(0,0,0,0.2);-webkit-box-shadow:0 5px 9px rgba(0,0,0,0.2);box-shadow:0 5px 9px rgba(0,0,0,0.2)}.sm-dox ul a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent var(--nav-menu-foreground-color);border-style:dashed dashed dashed solid}.sm-dox ul a,.sm-dox ul a:hover,.sm-dox ul a:focus,.sm-dox ul a:active,.sm-dox ul a.highlighted{color:var(--nav-menu-foreground-color);background-image:none;border:0 !important}.sm-dox ul a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:var(--nav-text-hover-shadow)}.sm-dox ul a:hover span.sub-arrow{border-color:transparent transparent transparent var(--nav-text-hover-color)}.sm-dox span.scroll-up,.sm-dox span.scroll-down{position:absolute;display:none;visibility:hidden;overflow:hidden;background:var(--nav-menu-background-color);height:36px}.sm-dox span.scroll-up:hover,.sm-dox span.scroll-down:hover{background:#eee}.sm-dox span.scroll-up:hover span.scroll-up-arrow,.sm-dox span.scroll-up:hover span.scroll-down-arrow{border-color:transparent transparent #d23600 transparent}.sm-dox span.scroll-down:hover span.scroll-down-arrow{border-color:#d23600 transparent transparent transparent}.sm-dox span.scroll-up-arrow,.sm-dox span.scroll-down-arrow{position:absolute;top:0;left:50%;margin-left:-6px;width:0;height:0;overflow:hidden;border-width:6px;border-style:dashed dashed solid dashed;border-color:transparent transparent var(--nav-menu-foreground-color) transparent}.sm-dox span.scroll-down-arrow{top:8px;border-style:solid dashed dashed dashed;border-color:var(--nav-menu-foreground-color) transparent transparent transparent}.sm-dox.sm-rtl a.has-submenu{padding-right:12px;padding-left:24px}.sm-dox.sm-rtl a span.sub-arrow{right:auto;left:12px}.sm-dox.sm-rtl.sm-vertical a.has-submenu{padding:10px 20px}.sm-dox.sm-rtl.sm-vertical a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-rtl>li>ul:before{left:auto;right:30px}.sm-dox.sm-rtl>li>ul:after{left:auto;right:31px}.sm-dox.sm-rtl ul a.has-submenu{padding:10px 20px !important}.sm-dox.sm-rtl ul a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-vertical{padding:10px 0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox.sm-vertical a{padding:10px 20px}.sm-dox.sm-vertical a:hover,.sm-dox.sm-vertical a:focus,.sm-dox.sm-vertical a:active,.sm-dox.sm-vertical a.highlighted{background:#fff}.sm-dox.sm-vertical a.disabled{background-image:var(--nav-gradient-image)}.sm-dox.sm-vertical a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-style:dashed dashed dashed solid;border-color:transparent transparent transparent #555}.sm-dox.sm-vertical>li>ul:before,.sm-dox.sm-vertical>li>ul:after{display:none}.sm-dox.sm-vertical ul a{padding:10px 20px}.sm-dox.sm-vertical ul a:hover,.sm-dox.sm-vertical ul a:focus,.sm-dox.sm-vertical ul a:active,.sm-dox.sm-vertical ul a.highlighted{background:#eee}.sm-dox.sm-vertical ul a.disabled{background:var(--nav-menu-background-color)}} diff --git a/topics.html b/topics.html index 39617658..cc1f4268 100644 --- a/topics.html +++ b/topics.html @@ -3,13 +3,15 @@ - + WinStd: Topics + + @@ -32,24 +34,35 @@
- + +
+
+
+