58 lines
1.4 KiB
C
58 lines
1.4 KiB
C
#ifndef _NULLSOFT_WINAMP_GEN_DEVICE_PROVIDER_WASABI_HEADER
|
|
#define _NULLSOFT_WINAMP_GEN_DEVICE_PROVIDER_WASABI_HEADER
|
|
|
|
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
|
|
#pragma once
|
|
#endif
|
|
|
|
#include <api/service/api_service.h>
|
|
extern api_service *wasabiManager;
|
|
#define WASABI_API_SVC wasabiManager
|
|
|
|
#include <api/application/api_application.h>
|
|
#define WASABI_API_APP applicationApi
|
|
|
|
#include "../Agave/Language/api_language.h"
|
|
|
|
#include "../../devices/api_devicemanager.h"
|
|
extern api_devicemanager *deviceManagerApi;
|
|
#define WASABI_API_DEVICES deviceManagerApi
|
|
|
|
BOOL
|
|
Wasabi_Initialize(HINSTANCE instance,
|
|
api_service *serviceMngr);
|
|
|
|
BOOL
|
|
Wasabi_InitializeFromWinamp(HINSTANCE instance,
|
|
HWND winampWindow);
|
|
|
|
BOOL
|
|
Wasabi_LoadDefaultServices(void);
|
|
|
|
unsigned long
|
|
Wasabi_AddRef(void);
|
|
|
|
unsigned long
|
|
Wasabi_Release(void);
|
|
|
|
void *
|
|
Wasabi_QueryInterface0(const GUID &interfaceGuid);
|
|
|
|
#define Wasabi_QueryInterface(_interfaceType, _interfaceGuid)\
|
|
((##_interfaceType*)Wasabi_QueryInterface0(_interfaceGuid))
|
|
|
|
|
|
void
|
|
Wasabi_ReleaseInterface0(const GUID &interfaceGuid,
|
|
void *interfaceInstance);
|
|
|
|
#define Wasabi_ReleaseInterface(_interfaceGuid, _interfaceInstance)\
|
|
(Wasabi_ReleaseInterface0((_interfaceGuid), (_interfaceInstance)))
|
|
|
|
|
|
#define Wasabi_ReleaseObject(_object)\
|
|
{if (NULL != (_object)) {((Dispatchable*)(_object))->Release();}}
|
|
|
|
|
|
#endif // _NULLSOFT_WINAMP_GEN_DEVICE_PROVIDER_WASABI_HEADER
|