diff options
Diffstat (limited to 'src/common/win32/registry.h')
-rw-r--r-- | src/common/win32/registry.h | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/src/common/win32/registry.h b/src/common/win32/registry.h new file mode 100644 index 000000000..fdaf9708a --- /dev/null +++ b/src/common/win32/registry.h @@ -0,0 +1,38 @@ +/* + * Ceph - scalable distributed file system + * + * Copyright (C) 2019 SUSE LINUX GmbH + * + * This is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software + * Foundation. See file COPYING. + * + */ + +#include "include/compat.h" +#include "common/ceph_context.h" + + +class RegistryKey { +public: + RegistryKey(CephContext *cct_, HKEY hRootKey, LPCTSTR strKey, bool create_value); + ~RegistryKey(); + + static remove(CephContext *cct_, HKEY hRootKey, LPCTSTR strKey); + + int flush(); + + int set(LPCTSTR lpValue, DWORD data); + int set(LPCTSTR lpValue, std::string data); + + int get(LPCTSTR lpValue, bool& value); + int get(LPCTSTR lpValue, DWORD& value); + int get(LPCTSTR lpValue, std::string& value); + + HKEY hKey = NULL; + bool missingKey = false; + +private: + CephContext *cct; +}; |