api_configi.h 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #ifndef __API_CONFIG_IMPL_H
  2. #define __API_CONFIG_IMPL_H
  3. /*<?<autoheader/>*/
  4. #include "api_config.h"
  5. #include "api_configx.h"
  6. #include <api/config/config.h>
  7. class CfgItem;
  8. /*?>*/
  9. class api_configI : public api_configX
  10. {
  11. public:
  12. api_configI();
  13. virtual ~api_configI();
  14. DISPATCH(10) virtual void config_registerCfgItem(CfgItem *cfgitem);
  15. DISPATCH(20) virtual void config_deregisterCfgItem(CfgItem *cfgitem);
  16. DISPATCH(30) virtual int config_getNumCfgItems();
  17. DISPATCH(40) virtual CfgItem *config_enumCfgItem(int n);
  18. DISPATCH(50) virtual CfgItem *config_getCfgItemByGuid(GUID g);
  19. DISPATCH(60) virtual void setIntPrivate(const wchar_t *name, int val);
  20. DISPATCH(70) virtual int getIntPrivate(const wchar_t *name, int def_val);
  21. DISPATCH(80) virtual void setIntArrayPrivate(const wchar_t *name, const int *val, int nval);
  22. DISPATCH(90) virtual int getIntArrayPrivate(const wchar_t *name, int *val, int nval);
  23. DISPATCH(100) virtual void setStringPrivate(const wchar_t *name, const wchar_t *str);
  24. DISPATCH(110) virtual int getStringPrivate(const wchar_t *name, wchar_t *buf, int buf_len, const wchar_t *default_str);
  25. DISPATCH(120) virtual int getStringPrivateLen(const wchar_t *name);
  26. DISPATCH(130) virtual void setIntPublic(const wchar_t *name, int val);
  27. DISPATCH(140) virtual int getIntPublic(const wchar_t *name, int def_val);
  28. DISPATCH(150) virtual void setStringPublic(const wchar_t *name, const wchar_t *str);
  29. DISPATCH(160) virtual int getStringPublic(const wchar_t *name, wchar_t *buf, int buf_len, const wchar_t *default_str);
  30. private:
  31. ConfigFile public_config;
  32. };
  33. /*[interface.footer.h]
  34. // {470B890C-4747-4113-ABA5-A8F8F4F8AB7E}
  35. static const GUID configApiServiceGuid =
  36. { 0x470b890c, 0x4747, 0x4113, { 0xab, 0xa5, 0xa8, 0xf8, 0xf4, 0xf8, 0xab, 0x7e } };
  37. extern api_config *configApi;
  38. */
  39. #endif // __API_CONFIG_IMPL_H