aboutsummaryrefslogtreecommitdiff
path: root/Src/Plugins/Library/ml_wire/Feeds.h
diff options
context:
space:
mode:
authorJef <jef@targetspot.com>2024-09-24 08:54:57 -0400
committerJef <jef@targetspot.com>2024-09-24 08:54:57 -0400
commit20d28e80a5c861a9d5f449ea911ab75b4f37ad0d (patch)
tree12f17f78986871dd2cfb0a56e5e93b545c1ae0d0 /Src/Plugins/Library/ml_wire/Feeds.h
parent537bcbc86291b32fc04ae4133ce4d7cac8ebe9a7 (diff)
downloadwinamp-20d28e80a5c861a9d5f449ea911ab75b4f37ad0d.tar.gz
Initial community commit
Diffstat (limited to 'Src/Plugins/Library/ml_wire/Feeds.h')
-rw-r--r--Src/Plugins/Library/ml_wire/Feeds.h50
1 files changed, 50 insertions, 0 deletions
diff --git a/Src/Plugins/Library/ml_wire/Feeds.h b/Src/Plugins/Library/ml_wire/Feeds.h
new file mode 100644
index 00000000..a8075627
--- /dev/null
+++ b/Src/Plugins/Library/ml_wire/Feeds.h
@@ -0,0 +1,50 @@
+#ifndef NULLSOFT_FEEDSH
+#define NULLSOFT_FEEDSH
+
+#include "ifc_podcast.h"
+#include "Item.h"
+#include <vector>
+
+class Channel : public ifc_podcast
+{
+public:
+ typedef std::vector<RSS::Item> ItemList;
+ Channel();
+ Channel(const Channel &copy);
+ const Channel &operator =(const Channel &copy);
+ ~Channel();
+ void SortByTitle(), SortByMedia(), SortByMediaTime(), SortByDate(), SortByMediaSize();
+ bool operator == (const Channel &compare);
+ //void operator = (const Channel &copy);
+ void UpdateFrom(const Channel &copy);
+
+ unsigned int ttl;
+ __time64_t updateTime, lastUpdate;
+ int autoDownloadEpisodes;
+ bool autoUpdate;
+ bool useDefaultUpdate;
+ bool autoDownload;
+ bool needsRefresh;
+ // TODO: std::wstring downloadLocation;
+ ItemList items;
+
+ void SetURL(const wchar_t *val);
+ void SetTitle(const wchar_t *val);
+ void SetLink(const wchar_t *val);
+ void SetDescription(const wchar_t *val);
+
+ wchar_t *url, *title, *link, *description;
+
+public: // ifc_podcast interface
+ int GetTitle(wchar_t *str, size_t len);
+
+private:
+ void Init();
+ void Reset();
+
+
+protected:
+ RECVS_DISPATCH;
+};
+
+#endif \ No newline at end of file