1bc679b60SStephan Aßmus #ifndef IFS_SAVER_H 2bc679b60SStephan Aßmus #define IFS_SAVER_H 3bc679b60SStephan Aßmus 4bc679b60SStephan Aßmus #include <Locker.h> 5bc679b60SStephan Aßmus // on PPC the full path is needed 6bc679b60SStephan Aßmus #include <add-ons/screen_saver/ScreenSaver.h> 7bc679b60SStephan Aßmus #include <View.h> 8bc679b60SStephan Aßmus 9bc679b60SStephan Aßmus #include "IFS.h" 10bc679b60SStephan Aßmus 11*98b054feSJohn Scipione 12bc679b60SStephan Aßmus class BCheckBox; 13bc679b60SStephan Aßmus class BSlider; 14bc679b60SStephan Aßmus 15*98b054feSJohn Scipione 16bc679b60SStephan Aßmus class IFSSaver : public BScreenSaver, public BHandler { 17bc679b60SStephan Aßmus public: 18bc679b60SStephan Aßmus IFSSaver(BMessage *message, 19bc679b60SStephan Aßmus image_id image); 20bc679b60SStephan Aßmus virtual ~IFSSaver(); 21bc679b60SStephan Aßmus 22bc679b60SStephan Aßmus virtual void StartConfig(BView *view); 23bc679b60SStephan Aßmus virtual status_t StartSaver(BView *view, bool preview); 24bc679b60SStephan Aßmus virtual void StopSaver(); 25bc679b60SStephan Aßmus 26bc679b60SStephan Aßmus virtual void DirectConnected(direct_buffer_info* info); 27bc679b60SStephan Aßmus virtual void Draw(BView* view, int32 frame); 28bc679b60SStephan Aßmus virtual void DirectDraw(int32 frame); 29bc679b60SStephan Aßmus 30bc679b60SStephan Aßmus virtual status_t SaveState(BMessage* into) const; 31bc679b60SStephan Aßmus 32bc679b60SStephan Aßmus virtual void MessageReceived(BMessage* message); 33bc679b60SStephan Aßmus 34bc679b60SStephan Aßmus private: 35bc679b60SStephan Aßmus void _Init(BRect bounds); 36bc679b60SStephan Aßmus void _Cleanup(); 37bc679b60SStephan Aßmus 38bc679b60SStephan Aßmus IFS* fIFS; 39bc679b60SStephan Aßmus 40bc679b60SStephan Aßmus bool fIsPreview; 41bc679b60SStephan Aßmus 42bc679b60SStephan Aßmus BLocker fLocker; 43bc679b60SStephan Aßmus 44bc679b60SStephan Aßmus BCheckBox* fAdditiveCB; 45bc679b60SStephan Aßmus BSlider* fSpeedS; 46bc679b60SStephan Aßmus 47bc679b60SStephan Aßmus buffer_info fDirectInfo; 48bc679b60SStephan Aßmus int32 fLastDrawnFrame; 49bc679b60SStephan Aßmus 50bc679b60SStephan Aßmus bool fAdditive; 51bc679b60SStephan Aßmus int32 fSpeed; 52bc679b60SStephan Aßmus }; 53bc679b60SStephan Aßmus 54bc679b60SStephan Aßmus 55bc679b60SStephan Aßmus #endif // IFS_SAVER_H 56