1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- #pragma once
- #include "../replicant/foundation/dispatch.h"
- #include "../replicant/foundation/error.h"
- #include "../replicant/service/types.h"
- #include "../replicant/nx/nxuri.h"
- static const GUID applicationApiServiceGuid =
- {
- 0x23b96771, 0x9d7, 0x46d3, { 0x9a, 0xe2, 0x20, 0xdc, 0xea, 0x6c, 0x86, 0xea }
- };
- class api_application: public Wasabi2::Dispatchable
- {
- protected:
- api_application() : Dispatchable(DISPATCHABLE_VERSION) {}
- ~api_application() {}
- public:
- static GUID GetServiceType() { return SVC_TYPE_UNIQUE; }
- static GUID GetServiceGUID() { return applicationApiServiceGuid; }
- const char *GetUserAgent() { return Application_GetUserAgent(); }
-
- int GetDataPath(nx_uri_t *path) { return Application_GetDataPath(path); }
-
- int GetPermission(GUID feature) { return Application_GetPermission(feature); }
-
- int GetFeature(GUID feature) { return Application_GetFeature(feature); }
-
- void SetFeature(GUID feature) { Application_SetFeature(feature); }
- unsigned int GetBuildNumber() { return Application_GetBuildNumber(); }
- int GetVersionString(nx_string_t *version) { return Application_GetVersionString(version); }
- int GetProductShortName(nx_string_t *name) { return Application_GetProductShortName(name); }
- int GetDeviceID(nx_string_t *value) { return Application_GetDeviceID(value); }
- enum
- {
- DISPATCHABLE_VERSION,
- };
- protected:
- virtual const char * Application_GetUserAgent()=0;
- virtual int Application_GetDataPath(nx_uri_t *path)=0;
- virtual int Application_GetPermission(GUID feature)=0;
- virtual int Application_GetFeature(GUID feature)=0;
- virtual void Application_SetFeature(GUID feature)=0;
- virtual unsigned int Application_GetBuildNumber() { return 0; }
- virtual int Application_GetVersionString(nx_string_t *version)=0;
- virtual int Application_GetProductShortName(nx_string_t *name)=0;
- virtual int Application_GetDeviceID(nx_string_t *value)=0;
- };
|