winamp/Src/Plugins/Library/ml_webdev/wasabi.h

46 lines
1.4 KiB
C

#ifndef NULLSOFT_WEBDEV_PLUGIN_WASABI_HEADER
#define NULLSOFT_WEBDEV_PLUGIN_WASABI_HEADER
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
#pragma once
#endif
#include <wtypes.h>
#include <api/application/api_application.h>
#define WASABI_API_APP applicationApi
#include "../Agave/Language/api_language.h"
#include "../Agave/ExplorerFindFile/api_explorerfindfile.h"
#include "../Winamp/JSAPI2_api_security.h"
extern JSAPI2::api_security *jsapi2_securityApi;
#define AGAVE_API_JSAPI2_SECURITY jsapi2_securityApi
#include <obj_ombrowser.h>
extern obj_ombrowser *browserManager;
#define OMBROWSERMNGR browserManager
#include <ifc_omservicemanager.h>
extern ifc_omservicemanager *serviceManager;
#define OMSERVICEMNGR serviceManager
#include <ifc_omutility.h>
extern ifc_omutility *omUtility;
#define OMUTILITY omUtility
BOOL WasabiApi_Initialize(HINSTANCE hInstance);
ULONG WasabiApi_AddRef(void);
ULONG WasabiApi_Release(void);
void *Wasabi_QueryInterface(REFGUID interfaceGuid);
void Wasabi_ReleaseInterface(REFGUID interfaceGuid, void *pInstance);
#define QueryWasabiInterface(__interfaceType, __interfaceGuid) ((##__interfaceType*)Wasabi_QueryInterface(__interfaceGuid))
#define ReleaseWasabiInterface(__interfaceGuid, __interfaceInstance) (Wasabi_ReleaseInterface((__interfaceGuid), (__interfaceInstance)))
void Wasabi_SafeRelease(Dispatchable *pDisp);
#endif // NULLSOFT_WEBDEV_PLUGIN_WASABI_HEADER