Sha256: 6ac9c20260cf733bfabcc682c36ff06bf571e34378cfc044526e74ca283ddbd7

Contents?: true

Size: 1.15 KB

Versions: 49

Compression:

Stored size: 1.15 KB

Contents

#include <Windows.h>

#include "entry.h"
#include "queue.h"

#ifndef WDM_MONITOR_H
#define WDM_MONITOR_H

#ifdef __cplusplus
extern "C" {
#endif // __cplusplus

// ---------------------------------------------------------
// Types
// ---------------------------------------------------------

typedef struct {
    BOOL running;
    WDM_PEntry head;
    WDM_PQueue changes;
    CRITICAL_SECTION lock;
    HANDLE monitoring_thread;
    HANDLE process_event;
    HANDLE stop_event;
} WDM_Monitor, *WDM_PMonitor;

typedef struct {
    WDM_PEntry entry;
    WDM_PMonitor monitor;
} WDM_MonitorCallbackParam, *WDM_PMonitorCallbackParam;

// ---------------------------------------------------------
// Prototypes
// ---------------------------------------------------------

WDM_PMonitor wdm_monitor_new();
void wdm_monitor_free(WDM_PMonitor);

void wdm_monitor_update_head(WDM_PMonitor, WDM_PEntry);

WDM_PMonitorCallbackParam wdm_monitor_callback_param_new(WDM_PMonitor, WDM_PEntry);
void wdm_monitor_callback_param_free(WDM_PMonitorCallbackParam);

// ---------------------------------------------------------

#ifdef __cplusplus
}
#endif // __cplusplus

#endif // WDM_MONITOR_H

Version data entries

49 entries across 41 versions & 5 rubygems

Version Path
wdm-0.2.0 ext/wdm/monitor.h
vagrant-unbundled-2.2.19.0 vendor/bundle/ruby/3.0.0/gems/wdm-0.1.1/ext/wdm/monitor.h
vagrant-unbundled-2.2.18.0 vendor/bundle/ruby/3.0.0/gems/wdm-0.1.1/ext/wdm/monitor.h
vagrant-unbundled-2.2.16.0 vendor/bundle/ruby/2.7.0/gems/wdm-0.1.1/ext/wdm/monitor.h
vagrant-unbundled-2.2.16.0 vendor/bundle/ruby/3.0.0/gems/wdm-0.1.1/ext/wdm/monitor.h
vagrant-unbundled-2.2.14.0 vendor/bundle/ruby/2.7.0/gems/wdm-0.1.1/ext/wdm/monitor.h
vagrant-unbundled-2.2.10.0 vendor/bundle/ruby/2.7.0/gems/wdm-0.1.1/ext/wdm/monitor.h
vagrant-unbundled-2.2.9.0 vendor/bundle/ruby/2.7.0/gems/wdm-0.1.1/ext/wdm/monitor.h
vagrant-unbundled-2.2.8.0 vendor/bundle/ruby/2.7.0/gems/wdm-0.1.1/ext/wdm/monitor.h
vagrant-unbundled-2.2.7.0 vendor/bundle/ruby/2.4.0/gems/wdm-0.1.1/ext/wdm/monitor.h
vagrant-unbundled-2.2.7.0 vendor/bundle/ruby/2.6.0/gems/wdm-0.1.1/ext/wdm/monitor.h
vagrant-unbundled-2.2.7.0 vendor/bundle/ruby/2.7.0/gems/wdm-0.1.1/ext/wdm/monitor.h
vagrant-unbundled-2.2.6.2 vendor/bundle/ruby/2.6.0/gems/wdm-0.1.1/ext/wdm/monitor.h
vagrant-unbundled-2.2.6.1 vendor/bundle/ruby/2.6.0/gems/wdm-0.1.1/ext/wdm/monitor.h
vagrant-unbundled-2.2.6.0 vendor/bundle/ruby/2.6.0/gems/wdm-0.1.1/ext/wdm/monitor.h
vagrant-unbundled-2.2.5.0 vendor/bundle/ruby/2.5.0/gems/wdm-0.1.1/ext/wdm/monitor.h
vagrant-unbundled-2.2.5.0 vendor/bundle/ruby/2.6.0/gems/wdm-0.1.1/ext/wdm/monitor.h
vagrant-unbundled-2.2.4.0 vendor/bundle/ruby/2.6.0/gems/wdm-0.1.1/ext/wdm/monitor.h
vagrant-unbundled-2.2.4.0 vendor/bundle/ruby/2.5.0/gems/wdm-0.1.1/ext/wdm/monitor.h
vagrant-unbundled-2.2.3.0 vendor/bundle/ruby/2.5.0/gems/wdm-0.1.1/ext/wdm/monitor.h