Initial community commit

This commit is contained in:
Jef
2024-09-24 14:54:57 +02:00
parent 537bcbc862
commit 20d28e80a5
16810 changed files with 4640254 additions and 2 deletions

View File

@ -0,0 +1,43 @@
#ifndef _NULLSOFT_WINAMP_DEVICES_DISCOVERY_MONITOR_HEADER
#define _NULLSOFT_WINAMP_DEVICES_DISCOVERY_MONITOR_HEADER
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
#pragma once
#endif
#include "ifc_deviceprovider.h"
#include <vector>
class DiscoveryMonitor
{
public:
DiscoveryMonitor();
~DiscoveryMonitor();
public:
BOOL Register(ifc_deviceprovider *provider);
BOOL Unregister(ifc_deviceprovider *provider);
BOOL IsActive();
BOOL Reset();
protected:
void Lock();
void Unlock();
private:
typedef struct ActiveDiscovery
{
intptr_t providerId;
size_t ref;
} ActiveDiscovery;
typedef std::vector<ActiveDiscovery> ActivityList;
private:
CRITICAL_SECTION lock;
ActivityList activityList;
};
#endif // _NULLSOFT_WINAMP_DEVICES_DISCOVERY_MONITOR_HEADER