1
0

Item.h 1011 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #pragma once
  2. #include <bfc/platform/types.h>
  3. #include <time.h>
  4. #include <windows.h>
  5. namespace RSS
  6. {
  7. class Item
  8. {
  9. public:
  10. Item();
  11. ~Item();
  12. Item(const Item &copy);
  13. const Item &operator =(const Item &copy);
  14. HRESULT GetDownloadFileName(const wchar_t *channelName, wchar_t *buffer, int bufferMax, BOOL fValidatePath) const;
  15. bool listened;
  16. bool downloaded;
  17. __time64_t publishDate;
  18. bool generatedDate;
  19. //protected:
  20. wchar_t *itemName;
  21. wchar_t *url;
  22. wchar_t *sourceUrl;
  23. wchar_t *guid;
  24. wchar_t *description;
  25. wchar_t *link;
  26. wchar_t *duration;
  27. int64_t size;
  28. private:
  29. void Init();
  30. void Reset();
  31. };
  32. class MutableItem : public Item
  33. {
  34. public:
  35. void SetItemName(const wchar_t *value);
  36. void SetLink(const wchar_t *value);
  37. void SetURL(const wchar_t *value);
  38. void SetSourceURL(const wchar_t *value);
  39. void SetGUID(const wchar_t *value);
  40. void SetDescription(const wchar_t *value);
  41. void SetDuration(const wchar_t *value);
  42. void SetSize(const wchar_t * _size);
  43. };
  44. }