LLMediaEngine Class Reference

#include <llmediaengine.h>

Collaboration diagram for LLMediaEngine:

Collaboration graph
[legend]
List of all members.

Public Member Functions

virtual ~LLMediaEngine ()
BOOL init ()
BOOL update ()
BOOL load (const LLString &urlIn, bool web_url, const LLString &path, S32 width_pixels, S32 height_pixels)
BOOL isLoaded ()
BOOL unload ()
BOOL play ()
BOOL loop ()
BOOL pause ()
BOOL stop ()
BOOL seek (F64 time)
void setAvailable (BOOL availableIn)
BOOL isAvailable ()
void setEnabled (BOOL enabledIn)
BOOL isEnabled ()
void setAutoScaled (BOOL autoScaledIn)
BOOL isAutoScaled ()
BOOL setVolume (F32 volumeIn)
void setUrl (const LLString &urlIn)
const LLStringgetUrl ()
void setImageUUID (LLUUID textureIdIn)
LLUUID getImageUUID ()
LLMediaBasegetMediaRenderer ()
LLImageRawgetImageRaw ()
void handleSizeChangedRequest ()
void setNetworkProxy (BOOL enabledIn, const LLString &addressIn, S32 portIn, S32 socksIn, const LLString &excludeIn)
void getNetworkProxy (BOOL &enabledOut, LLString &addressOut, S32 &portOut, S32 &socksOut, LLString &excludeOuy)

Static Public Member Functions

static void initClass ()
static void updateClass (F32 volume)
static void cleanupClass ()
static LLMediaEnginegetInstance ()
static void convertImageAndLoadUrl (bool enableLooping, bool web_url, const std::string &path)
static void process_parcel_media (LLMessageSystem *msg, void **)
static void process_parcel_media_update (LLMessageSystem *msg, void **)

Protected Member Functions

 LLMediaEngine ()

Private Member Functions

void createImageRaw ()
void destroyImageRaw ()

Private Attributes

BOOL mAvailable
BOOL mEnabled
BOOL mAutoScaled
LLString mUrl
LLMediaBasemMediaRenderer
LLPointer< LLImageRawmImageRaw
LLUUID mImageUUID
F32 mVolume
BOOL mProxyEnabled
LLString mProxyAddress
S32 mProxyPort
S32 mProxySocks
LLString mProxyExlude

Static Private Attributes

static LLMediaEnginesInstance = 0

Detailed Description

Definition at line 47 of file llmediaengine.h.


Constructor & Destructor Documentation

LLMediaEngine::LLMediaEngine (  )  [protected]

Definition at line 66 of file llmediaengine.cpp.

Referenced by initClass().

LLMediaEngine::~LLMediaEngine (  )  [virtual]

Definition at line 84 of file llmediaengine.cpp.

References destroyImageRaw(), and unload().


Member Function Documentation

void LLMediaEngine::cleanupClass (  )  [static]

Definition at line 58 of file llmediaengine.cpp.

References NULL, and sInstance.

Referenced by cleanup_app().

void LLMediaEngine::convertImageAndLoadUrl ( bool  enableLooping,
bool  web_url,
const std::string &  path 
) [static]

Definition at line 437 of file llmediaengine.cpp.

References createImageRaw(), getImageRaw(), getInstance(), getMediaRenderer(), getUrl(), llendl, llinfos, load(), loop(), mImageRaw, play(), S32, LLMediaBase::setBuffer(), and LLMediaBase::setBufferSize().

Referenced by LLOverlayBar::mediaPlay(), LLPanelLandMedia::onClickStartMedia(), process_parcel_media(), and start_video().

void LLMediaEngine::createImageRaw (  )  [private]

Definition at line 92 of file llmediaengine.cpp.

References depth, destroyImageRaw(), LLMediaBase::getMediaDepthBytes(), LLMediaBase::getMediaHeight(), getMediaRenderer(), LLMediaBase::getMediaWidth(), height, LLPointer< Type >::isNull(), mImageRaw, S32, and width.

Referenced by convertImageAndLoadUrl(), and handleSizeChangedRequest().

void LLMediaEngine::destroyImageRaw (  )  [private]

Definition at line 112 of file llmediaengine.cpp.

References mImageRaw, and NULL.

Referenced by createImageRaw(), process_parcel_media(), process_parcel_media_update(), and ~LLMediaEngine().

LLImageRaw* LLMediaEngine::getImageRaw (  )  [inline]

Definition at line 95 of file llmediaengine.h.

References mImageRaw.

Referenced by convertImageAndLoadUrl(), and LLViewerImageList::updateImagesMediaStreams().

LLUUID LLMediaEngine::getImageUUID (  ) 

Definition at line 412 of file llmediaengine.cpp.

References mImageUUID.

Referenced by LLPanelFaceSetMediaFunctor::apply(), process_parcel_media_update(), LLViewerParcelMgr::processParcelProperties(), and LLViewerImageList::updateImagesMediaStreams().

LLMediaEngine * LLMediaEngine::getInstance (  )  [static]

Definition at line 119 of file llmediaengine.cpp.

References sInstance.

Referenced by LLPanelFaceSetMediaFunctor::apply(), audio_update_volume(), convertImageAndLoadUrl(), LLOverlayBar::enableMediaButtons(), LLPanelFace::getState(), LLAudioStreamMediaListener::handleEvent(), handleSizeChangedRequest(), idle_startup(), LLOverlayBar::mediaPause(), LLOverlayBar::mediaPlay(), LLOverlayBar::mediaStop(), LLPanelLandMedia::onClickStartMedia(), LLPanelLandMedia::onClickStopMedia(), prepare_video(), process_parcel_media(), process_parcel_media_update(), LLViewerParcelMgr::processParcelProperties(), LLOverlayBar::refresh(), start_video(), stop_video(), and LLViewerImageList::updateImagesMediaStreams().

LLMediaBase * LLMediaEngine::getMediaRenderer (  ) 

Definition at line 126 of file llmediaengine.cpp.

References mMediaRenderer.

Referenced by convertImageAndLoadUrl(), createImageRaw(), handleSizeChangedRequest(), LLViewerParcelMgr::processParcelProperties(), and LLViewerImageList::updateImagesMediaStreams().

void LLMediaEngine::getNetworkProxy ( BOOL enabledOut,
LLString addressOut,
S32 portOut,
S32 socksOut,
LLString excludeOuy 
)

Definition at line 614 of file llmediaengine.cpp.

References mProxyAddress, mProxyEnabled, mProxyExlude, mProxyPort, and mProxySocks.

const LLString & LLMediaEngine::getUrl (  ) 

Definition at line 398 of file llmediaengine.cpp.

References mUrl.

Referenced by convertImageAndLoadUrl(), process_parcel_media_update(), and LLViewerParcelMgr::processParcelProperties().

void LLMediaEngine::handleSizeChangedRequest (  ) 

Definition at line 419 of file llmediaengine.cpp.

References createImageRaw(), getInstance(), getMediaRenderer(), isAvailable(), mImageRaw, LLPointer< Type >::notNull(), and LLMediaBase::setBuffer().

Referenced by update().

BOOL LLMediaEngine::init (  ) 

Definition at line 134 of file llmediaengine.cpp.

References FALSE, isAvailable(), and TRUE.

void LLMediaEngine::initClass (  )  [static]

Definition at line 44 of file llmediaengine.cpp.

References llassert, LLMediaEngine(), and sInstance.

Referenced by main().

BOOL LLMediaEngine::isAutoScaled (  ) 

Definition at line 384 of file llmediaengine.cpp.

References mAutoScaled.

Referenced by process_parcel_media_update(), and LLViewerParcelMgr::processParcelProperties().

BOOL LLMediaEngine::isAvailable (  ) 

Definition at line 332 of file llmediaengine.cpp.

References mAvailable.

Referenced by handleSizeChangedRequest(), init(), isLoaded(), load(), loop(), pause(), play(), seek(), setVolume(), stop(), and unload().

BOOL LLMediaEngine::isEnabled (  ) 

Definition at line 367 of file llmediaengine.cpp.

References FALSE, mAvailable, and mEnabled.

BOOL LLMediaEngine::isLoaded (  ) 

Definition at line 212 of file llmediaengine.cpp.

References FALSE, isAvailable(), LLMediaBase::isLoaded(), and mMediaRenderer.

Referenced by load(), process_parcel_media(), and process_parcel_media_update().

BOOL LLMediaEngine::load ( const LLString urlIn,
bool  web_url,
const LLString path,
S32  width_pixels,
S32  height_pixels 
)

Definition at line 174 of file llmediaengine.cpp.

References FALSE, LLMediaBase::init(), isAvailable(), isLoaded(), LLMediaBase::load(), LLMediaBase::make(), mAutoScaled, mMediaRenderer, LLMediaBase::QuickTime, LLMediaBase::setAutoScaled(), TRUE, and unload().

Referenced by convertImageAndLoadUrl().

BOOL LLMediaEngine::loop (  ) 

Definition at line 265 of file llmediaengine.cpp.

References FALSE, isAvailable(), LLMediaBase::loop(), mMediaRenderer, mVolume, setVolume(), and TRUE.

Referenced by convertImageAndLoadUrl().

BOOL LLMediaEngine::pause (  ) 

Definition at line 283 of file llmediaengine.cpp.

References FALSE, isAvailable(), mMediaRenderer, LLMediaBase::pause(), and TRUE.

Referenced by LLOverlayBar::mediaPause(), and process_parcel_media().

BOOL LLMediaEngine::play (  ) 

Definition at line 247 of file llmediaengine.cpp.

References FALSE, isAvailable(), mMediaRenderer, mVolume, LLMediaBase::play(), setVolume(), and TRUE.

Referenced by convertImageAndLoadUrl().

void LLMediaEngine::process_parcel_media ( LLMessageSystem msg,
void **   
) [static]

Definition at line 483 of file llmediaengine.cpp.

References convertImageAndLoadUrl(), destroyImageRaw(), LLMessageSystem::getF32(), getInstance(), LLMessageSystem::getU32(), isLoaded(), PARCEL_MEDIA_COMMAND_LOOP, PARCEL_MEDIA_COMMAND_PAUSE, PARCEL_MEDIA_COMMAND_PLAY, PARCEL_MEDIA_COMMAND_STOP, PARCEL_MEDIA_COMMAND_TIME, PARCEL_MEDIA_COMMAND_UNLOAD, pause(), seek(), stop(), and unload().

Referenced by callback_prepare_video(), LLAudioStreamMediaListener::handleEvent(), and register_viewer_callbacks().

void LLMediaEngine::process_parcel_media_update ( LLMessageSystem msg,
void **   
) [static]

Definition at line 572 of file llmediaengine.cpp.

References destroyImageRaw(), FALSE, getImageUUID(), getInstance(), LLMessageSystem::getString(), LLMessageSystem::getU8(), getUrl(), LLMessageSystem::getUUID(), isAutoScaled(), isLoaded(), setAutoScaled(), setImageUUID(), setUrl(), TRUE, and unload().

Referenced by callback_prepare_video(), LLAudioStreamMediaListener::handleEvent(), and register_viewer_callbacks().

BOOL LLMediaEngine::seek ( F64  time  ) 

Definition at line 311 of file llmediaengine.cpp.

References FALSE, isAvailable(), mMediaRenderer, LLMediaBase::seek(), and TRUE.

Referenced by process_parcel_media().

void LLMediaEngine::setAutoScaled ( BOOL  autoScaledIn  ) 

Definition at line 377 of file llmediaengine.cpp.

References mAutoScaled.

Referenced by prepare_video(), and process_parcel_media_update().

void LLMediaEngine::setAvailable ( BOOL  availableIn  ) 

Definition at line 325 of file llmediaengine.cpp.

References mAvailable.

Referenced by idle_startup().

void LLMediaEngine::setEnabled ( BOOL  enabledIn  ) 

Definition at line 359 of file llmediaengine.cpp.

References mAvailable, and mEnabled.

void LLMediaEngine::setImageUUID ( LLUUID  textureIdIn  ) 

Definition at line 405 of file llmediaengine.cpp.

References mImageUUID.

Referenced by prepare_video(), process_parcel_media_update(), and stop_video().

void LLMediaEngine::setNetworkProxy ( BOOL  enabledIn,
const LLString addressIn,
S32  portIn,
S32  socksIn,
const LLString excludeIn 
)

Definition at line 603 of file llmediaengine.cpp.

References mProxyAddress, mProxyEnabled, mProxyExlude, mProxyPort, and mProxySocks.

void LLMediaEngine::setUrl ( const LLString urlIn  ) 

Definition at line 391 of file llmediaengine.cpp.

References mUrl.

Referenced by prepare_video(), process_parcel_media_update(), and stop_video().

BOOL LLMediaEngine::setVolume ( F32  volumeIn  ) 

Definition at line 339 of file llmediaengine.cpp.

References FALSE, isAvailable(), mMediaRenderer, mVolume, LLMediaBase::setVolume(), and TRUE.

Referenced by audio_update_volume(), loop(), play(), and updateClass().

BOOL LLMediaEngine::stop (  ) 

Definition at line 297 of file llmediaengine.cpp.

References FALSE, isAvailable(), mMediaRenderer, LLMediaBase::stop(), and TRUE.

Referenced by LLOverlayBar::mediaStop(), LLPanelLandMedia::onClickStopMedia(), process_parcel_media(), and stop_video().

BOOL LLMediaEngine::unload (  ) 

Definition at line 225 of file llmediaengine.cpp.

References FALSE, isAvailable(), mMediaRenderer, LLMediaBase::stop(), TRUE, and LLMediaBase::unload().

Referenced by load(), process_parcel_media(), process_parcel_media_update(), stop_video(), and ~LLMediaEngine().

BOOL LLMediaEngine::update (  ) 

Definition at line 144 of file llmediaengine.cpp.

References FALSE, handleSizeChangedRequest(), mMediaRenderer, S32, TRUE, LLMediaBase::updateMedia(), LLMediaBase::updateMediaNeedsSizeChange, LLMediaBase::updateMediaNeedsUpdate, and LLMediaBase::updateMediaNoChanges.

Referenced by LLViewerImageList::updateImagesMediaStreams().

void LLMediaEngine::updateClass ( F32  volume  )  [static]

Definition at line 51 of file llmediaengine.cpp.

References llassert, setVolume(), and sInstance.


Member Data Documentation

BOOL LLMediaEngine::mAutoScaled [private]

Definition at line 121 of file llmediaengine.h.

Referenced by isAutoScaled(), load(), and setAutoScaled().

BOOL LLMediaEngine::mAvailable [private]

Definition at line 119 of file llmediaengine.h.

Referenced by isAvailable(), isEnabled(), setAvailable(), and setEnabled().

BOOL LLMediaEngine::mEnabled [private]

Definition at line 120 of file llmediaengine.h.

Referenced by isEnabled(), and setEnabled().

LLPointer<LLImageRaw> LLMediaEngine::mImageRaw [private]

Definition at line 126 of file llmediaengine.h.

Referenced by convertImageAndLoadUrl(), createImageRaw(), destroyImageRaw(), getImageRaw(), and handleSizeChangedRequest().

LLUUID LLMediaEngine::mImageUUID [private]

Definition at line 128 of file llmediaengine.h.

Referenced by getImageUUID(), and setImageUUID().

LLMediaBase* LLMediaEngine::mMediaRenderer [private]

Definition at line 125 of file llmediaengine.h.

Referenced by getMediaRenderer(), isLoaded(), load(), loop(), pause(), play(), seek(), setVolume(), stop(), unload(), and update().

LLString LLMediaEngine::mProxyAddress [private]

Definition at line 133 of file llmediaengine.h.

Referenced by getNetworkProxy(), and setNetworkProxy().

BOOL LLMediaEngine::mProxyEnabled [private]

Definition at line 132 of file llmediaengine.h.

Referenced by getNetworkProxy(), and setNetworkProxy().

LLString LLMediaEngine::mProxyExlude [private]

Definition at line 136 of file llmediaengine.h.

Referenced by getNetworkProxy(), and setNetworkProxy().

S32 LLMediaEngine::mProxyPort [private]

Definition at line 134 of file llmediaengine.h.

Referenced by getNetworkProxy(), and setNetworkProxy().

S32 LLMediaEngine::mProxySocks [private]

Definition at line 135 of file llmediaengine.h.

Referenced by getNetworkProxy(), and setNetworkProxy().

LLString LLMediaEngine::mUrl [private]

Definition at line 122 of file llmediaengine.h.

Referenced by getUrl(), and setUrl().

F32 LLMediaEngine::mVolume [private]

Definition at line 129 of file llmediaengine.h.

Referenced by loop(), play(), and setVolume().

LLMediaEngine * LLMediaEngine::sInstance = 0 [static, private]

Definition at line 139 of file llmediaengine.h.

Referenced by cleanupClass(), getInstance(), initClass(), and updateClass().


The documentation for this class was generated from the following files:
Generated on Thu Jul 1 06:11:30 2010 for Second Life Viewer by  doxygen 1.4.7