diff options
author | Josh Bell <josh@lindenlab.com> | 2008-02-14 01:45:59 +0000 |
---|---|---|
committer | Josh Bell <josh@lindenlab.com> | 2008-02-14 01:45:59 +0000 |
commit | 98fd90ddd6595f2ee7e626c14117f51def621ec5 (patch) | |
tree | 9a9caf8bffa53b753fe850f445bd133195e9bb03 /indra/newview/llviewerparcelmedia.h | |
parent | 89d938efe371645756240da72f4c359c36985060 (diff) |
svn merge -r 79730:79944 svn+ssh://svn.lindenlab.com/svn/linden/branches/parcel_media/sl-parcelmedia-6 --> release
QAR-275 Parcel Media
Sam made me do it.
Diffstat (limited to 'indra/newview/llviewerparcelmedia.h')
-rw-r--r-- | indra/newview/llviewerparcelmedia.h | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/indra/newview/llviewerparcelmedia.h b/indra/newview/llviewerparcelmedia.h new file mode 100644 index 0000000000..bf391a83cb --- /dev/null +++ b/indra/newview/llviewerparcelmedia.h @@ -0,0 +1,52 @@ +/** + * @file llviewerparcelmedia.h + * @author Callum Prentice & James Cook + * @brief Handlers for multimedia on a per-parcel basis + * + * Copyright (c) 2007-$CurrentYear$, Linden Research, Inc. + * $License$ + */ +#ifndef LLVIEWERPARCELMEDIA_H +#define LLVIEWERPARCELMEDIA_H + +#include "llmediabase.h" + +class LLMessageSystem; +class LLParcel; + +// This class understands land parcels, network traffic, LSL media +// transport commands, and talks to the LLViewerMedia class to actually +// do playback. It allows us to remove code from LLViewerParcelMgr. +class LLViewerParcelMedia +{ + public: + static void initClass(); + + static void update(LLParcel* parcel); + // called when the agent's parcel has a new URL, or the agent has + // walked on to a new parcel with media + + static void play(LLParcel* parcel); + // user clicked play button in media transport controls + + static void stop(); + // user clicked stop button in media transport controls + + static void pause(); + static void start(); + // restart after pause - no need for all the setup + + static void seek(F32 time); + // jump to timecode time + + static LLMediaBase::EStatus getStatus(); + + static void processParcelMediaCommandMessage( LLMessageSystem *msg, void ** ); + static void processParcelMediaUpdate( LLMessageSystem *msg, void ** ); + + public: + static S32 sMediaParcelLocalID; + static LLUUID sMediaRegionID; +}; + +#endif |