winamp/Src/Wasabi/api/application/api_applicationi.h

50 lines
1.4 KiB
C++

#ifndef __API_APPLICATIONI_IMPL_H
#define __API_APPLICATIONI_IMPL_H
/*<?<autoheader/>*/
#include "api_application.h"
#include "api_applicationx.h"
/*?>*/
/*[interface.header.h]
#include "common/nsGUID.h"
class String;
*/
class api_applicationI : public api_applicationX {
public:
NODISPATCH api_applicationI(HINSTANCE instance, const wchar_t *_userPath);
NODISPATCH virtual ~api_applicationI();
DISPATCH(10) const wchar_t *main_getAppName();
DISPATCH(20) const wchar_t *main_getVersionString();
DISPATCH(30) unsigned int main_getBuildNumber();
DISPATCH(40) GUID main_getGUID();
DISPATCH(50) HANDLE main_getMainThreadHandle();
DISPATCH(60) HINSTANCE main_gethInstance();
DISPATCH(70) const wchar_t *main_getCommandLine();
DISPATCH(80) void main_shutdown(int deferred = TRUE);
DISPATCH(90) void main_cancelShutdown();
DISPATCH(100) int main_isShuttingDown();
DISPATCH(110) const wchar_t *path_getAppPath();
DISPATCH(120) const wchar_t *path_getUserSettingsPath();
DISPATCH(130) int app_getInitCount();
DISPATCH(140) int app_messageLoopStep();
NODISPATCH void setHInstance(HINSTANCE instance);
NODISPATCH void setCommandLine(const wchar_t *cmdline);
NODISPATCH void setGUID(GUID g);
protected:
HINSTANCE appInstance;
StringW cmdLine;
StringW userPath;
HANDLE mainthread;
GUID guid;
int shuttingdown;
StringW apppath;
};
#endif // __API_APPLICATIONI_IMPL_H