#ifndef IFS_SAVER_H #define IFS_SAVER_H #include // on PPC the full path is needed #include #include #include "IFS.h" class BCheckBox; class BSlider; class IFSSaver : public BScreenSaver, public BHandler { public: IFSSaver(BMessage *message, image_id image); virtual ~IFSSaver(); virtual void StartConfig(BView *view); virtual status_t StartSaver(BView *view, bool preview); virtual void StopSaver(); virtual void DirectConnected(direct_buffer_info* info); virtual void Draw(BView* view, int32 frame); virtual void DirectDraw(int32 frame); virtual status_t SaveState(BMessage* into) const; virtual void MessageReceived(BMessage* message); private: void _Init(BRect bounds); void _Cleanup(); IFS* fIFS; bool fIsPreview; BLocker fLocker; BCheckBox* fAdditiveCB; BSlider* fSpeedS; buffer_info fDirectInfo; int32 fLastDrawnFrame; bool fAdditive; int32 fSpeed; }; #endif // IFS_SAVER_H