OpenRGB/Controllers/CorsairController/CorsairDeviceGuard.h
Aiden Vigue cb3f0fdcbd Support for iCUE Link System Hub & attached devices
Commits amended to adhere to OpenRGB code standards and restructure functional layout by Adam Honse <calcprogrammer1@gmail.com>
2025-08-01 21:46:29 -05:00

38 lines
1.1 KiB
C++

/*---------------------------------------------------------*\
| CorsairDeviceGuard.cpp |
| |
| DeviceGuard for Corsair devices |
| |
| Evan Mulawski 04 Sep 2023 |
| |
| This file is part of the OpenRGB project |
| SPDX-License-Identifier: GPL-2.0-only |
\*---------------------------------------------------------*/
#pragma once
#include "DeviceGuard.h"
#ifdef _WIN32
/*---------------------------------------------------------*\
| Windows interferes with std::max unless NOMINMAX defined |
\*---------------------------------------------------------*/
#define NOMINMAX
#include <Windows.h>
#endif
class CorsairDeviceGuard : public DeviceGuard
{
public:
CorsairDeviceGuard();
void Acquire() override;
void Release() override;
private:
#ifdef _WIN32
HANDLE mutex_handle;
HANDLE CreateWindowsMutex();
#endif
};