summaryrefslogtreecommitdiff
path: root/include/m_fuse.h
blob: 8a2ff8169f0212ee2503bcb660f59598934a1c5b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#ifdef _ALPHA_FUSE_
#ifndef _M_FUSE_
#define _M_FUSE_

#define CALLSERVICE_NOTFOUND      ((int)0x80000000)
#define MAXMODULELABELLENGTH 64
typedef int (*MIRANDAHOOK)(WPARAM,LPARAM);
typedef INT_PTR (*MIRANDASERVICE)(WPARAM,LPARAM);

#define FUSE_INIT	0			// core started, Param=**FUSE_LINK
#define FUSE_DEINIT 1			// core stopped
#define FUSE_DEFMOD	3			// LoadDefaultModules() return code, Param=*int
#define FUSE_DEATH  4			// DestroyingModularEngine() just got called

typedef struct {
	int cbSize;
	HANDLE (*CreateHookableEvent)(const char *);
	int (*DestroyHookableEvent)(HANDLE);
	int (*NotifyEventHooks)(HANDLE,WPARAM,LPARAM);
	HANDLE (*HookEvent)(const char *,MIRANDAHOOK);
	HANDLE (*HookEventMessage)(const char *,HWND,UINT);
	int (*UnhookEvent)(HANDLE);
	HANDLE (*CreateServiceFunction)(const char *,MIRANDASERVICE);
	HANDLE (*CreateTransientServiceFunction)(const char *,MIRANDASERVICE);
	int (*DestroyServiceFunction)(HANDLE);
	int (*CallService)(const char *,WPARAM,LPARAM);
	int (*ServiceExists)(const char *);		  //v0.1.0.1+
	int (*CallServiceSync)(const char*,WPARAM,LPARAM); //v0.1.2.2+
} FUSE_LINK;

#endif
#endif