iconStore.h 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. #ifndef _NULLSOFT_WINAMP_GEN_DEVICE_ICON_STORE_HEADER
  2. #define _NULLSOFT_WINAMP_GEN_DEVICE_ICON_STORE_HEADER
  3. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  4. #pragma once
  5. #endif
  6. #include <wtypes.h>
  7. typedef struct IconStore IconStore;
  8. typedef BOOL (*IconEnumerator)(const wchar_t *path, unsigned int width, unsigned int height, void *user);
  9. IconStore *
  10. IconStore_Create();
  11. void
  12. IconStore_Destroy(IconStore *self);
  13. BOOL
  14. IconStore_Add(IconStore *self,
  15. const wchar_t *path,
  16. unsigned int width,
  17. unsigned int height);
  18. BOOL
  19. IconStore_RemovePath(IconStore *self,
  20. const wchar_t *path);
  21. BOOL
  22. IconStore_Remove(IconStore *self,
  23. unsigned int width,
  24. unsigned int height);
  25. BOOL
  26. IconStore_Get(IconStore *self,
  27. wchar_t *buffer,
  28. size_t bufferMax,
  29. unsigned int width,
  30. unsigned int height);
  31. BOOL
  32. IconStore_SetBasePath(IconStore *self,
  33. const wchar_t *path);
  34. IconStore *
  35. IconStore_Clone(IconStore *self);
  36. BOOL
  37. IconStore_Enumerate(IconStore *self,
  38. IconEnumerator callback,
  39. void *user);
  40. #endif //_NULLSOFT_WINAMP_GEN_DEVICE_ICON_STORE_HEADER