00001 00033 // header guard 00034 #ifndef llmediamoviebase_h 00035 #define llmediamoviebase_h 00036 00037 #include "llmediabase.h" 00038 00039 class LLMediaMovieBase : public LLMediaBase 00040 { 00041 public: 00042 LLMediaMovieBase (); 00043 00044 // do the right thing with dtor 00045 virtual ~LLMediaMovieBase () 00046 { 00047 }; 00048 00050 // factory method based on explicit media type 00051 static LLMediaMovieBase* make ( const MediaType mediaTypeIn, S32 width_pixels, S32 height_pixels ); 00052 00054 // public interface: 00055 00056 // transport controls 00057 virtual BOOL stop (); 00058 virtual BOOL play (); 00059 virtual BOOL loop ( S32 howMany ); 00060 virtual BOOL pause (); 00061 virtual BOOL seek ( F64 time ); 00062 00063 // audio levels 00064 virtual BOOL setVolume ( F32 volumeIn ); 00065 virtual F32 getVolume (); 00066 00067 // status 00068 virtual BOOL isIdle () const; 00069 virtual BOOL isBuffering () const; 00070 virtual BOOL isError () const; 00071 virtual BOOL isLoaded () const; 00072 virtual BOOL isStopped () const; 00073 virtual BOOL isPaused () const; 00074 virtual BOOL isPlaying () const; 00075 virtual BOOL isLooping () const; 00076 virtual F64 getTime () const; 00077 00078 // media data 00079 virtual void setAutoScaled ( BOOL autoScaledIn ); 00080 virtual F64 getMediaDuration () const; 00081 }; 00082 00083 00084 #endif // llmediamoviebase_h