content/media/plugins/MediaPluginHost.h

Wed, 31 Dec 2014 06:55:50 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:55:50 +0100
changeset 2
7e26c7da4463
permissions
-rw-r--r--

Added tag UPSTREAM_283F7C6 for changeset ca08bd8f51b2

     1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
     2 /* vim:set ts=2 sw=2 sts=2 et cindent: */
     3 /* This Source Code Form is subject to the terms of the Mozilla Public
     4  * License, v. 2.0. If a copy of the MPL was not distributed with this file,
     5  * You can obtain one at http://mozilla.org/MPL/2.0/. */
     6 #if !defined(MediaPluginHost_h_)
     7 #define MediaPluginHost_h_
     9 #include "nsTArray.h"
    10 #include "MediaResource.h"
    11 #include "MPAPI.h"
    12 #include "MediaResourceServer.h"
    14 namespace mozilla {
    16 class MediaPluginReader;
    18 class MediaPluginHost {
    19   nsRefPtr<MediaResourceServer> mResourceServer;
    20   nsTArray<MPAPI::Manifest *> mPlugins;
    22   MPAPI::Manifest *FindPlugin(const nsACString& aMimeType);
    23 public:
    24   MediaPluginHost();
    25   ~MediaPluginHost();
    27   static void Shutdown();
    29   bool FindDecoder(const nsACString& aMimeType, const char* const** aCodecs);
    30   MPAPI::Decoder *CreateDecoder(mozilla::MediaResource *aResource, const nsACString& aMimeType);
    31   void DestroyDecoder(MPAPI::Decoder *aDecoder);
    32 };
    34 MediaPluginHost *GetMediaPluginHost();
    36 } // namespace mozilla
    38 #endif

mercurial