123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- #ifndef __FEEDWATCH_H
- #define __FEEDWATCH_H
- #include <bfc/wasabi_std.h>
- #include <api/syscb/callbacks/svccbi.h>
- #include "feedwatcherso.h"
- class svc_textFeed;
- class ifc_dependent;
- class FeedWatcher : private SvcCallbackI, public FeedWatcherScriptObject {
- public:
- FeedWatcher();
- virtual ~FeedWatcher();
- int setFeed(const wchar_t *feedid);
- void releaseFeed();
- const wchar_t *getFeedId();
- virtual void feedwatcher_onSetFeed(svc_textFeed *svc) { }
- virtual void feedwatcher_onFeedChange(const wchar_t *data) { }
- protected:
- class FWDV : public DependentViewerI
- {
- public:
- friend class FeedWatcher;
- FWDV(FeedWatcher *parent);
- virtual int viewer_onItemDeleted(ifc_dependent *item);
- virtual int viewer_onEvent(ifc_dependent *item, const GUID *classguid, int event, intptr_t param, void *ptr, size_t ptrlen);
- FeedWatcher *parent;
- };
-
- // catches text feed change events
- virtual int fwdv_onItemDeleted(ifc_dependent *item);
- virtual int fwdv_onEvent(ifc_dependent *item, int event, intptr_t param2, void *ptr, size_t ptrlen);
- private:
- // catches new feeds being registered
- virtual void svccb_onSvcRegister(FOURCC type, waServiceFactory *svc);
- int registered_syscb;
- StringW feed_id;
- svc_textFeed *textfeed;
- FWDV fwdv;
- };
- #endif
|