Pogger/src/FeedController.h
2021-01-13 20:23:21 -06:00

45 lines
778 B
C++

/*
* Copyright 2020, Jaidyn Levesque <jadedctrl@teknik.io>
* All rights reserved. Distributed under the terms of the MIT license.
*/
#ifndef FEEDCONTROLLER_H
#define FEEDCONTROLLER_H
#include <SupportDefs.h>
#include <OS.h>
class BList;
class BMessage;
enum
{
kEnqueueFeed = 'fenq',
kClearQueue = 'frmq',
kDownloadComplete = 'fdlc',
kDownloadFail = 'fdlf',
kParseComplete = 'fpec',
kParseFail = 'fpef',
kUpdateSubscribed = 'fups'
};
class FeedController{
public:
FeedController();
~FeedController();
void MessageReceived(BMessage* msg);
static BList SubscribedFeeds();
private:
static int32 _DownloadLoop(void* ignored);
static int32 _ParseLoop(void* ignored);
thread_id fDownloadThread;
thread_id fParseThread;
};
#endif // FEEDCONTROLLER_H