content/media/fmp4/ffmpeg/FFmpegRuntimeLinker.h

Thu, 15 Jan 2015 15:55:04 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 15 Jan 2015 15:55:04 +0100
branch
TOR_BUG_9701
changeset 9
a63d609f5ebe
permissions
-rw-r--r--

Back out 97036ab72558 which inappropriately compared turds to third parties.

     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
     5  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
     7 #ifndef __FFmpegRuntimeLinker_h__
     8 #define __FFmpegRuntimeLinker_h__
    10 extern "C" {
    11 #pragma GCC visibility push(default)
    12 #include <libavcodec/avcodec.h>
    13 #include <libavformat/avformat.h>
    14 #include <libavutil/imgutils.h>
    15 #pragma GCC visibility pop
    16 }
    18 #include "nsAutoPtr.h"
    20 namespace mozilla
    21 {
    23 class FFmpegRuntimeLinker
    24 {
    25 public:
    26   static bool Link();
    27   static void Unlink();
    29 private:
    30   static void* sLinkedLibs[];
    32   static enum LinkStatus {
    33     LinkStatus_INIT = 0,
    34     LinkStatus_FAILED,
    35     LinkStatus_SUCCEEDED
    36   } sLinkStatus;
    37 };
    39 #define AV_FUNC(lib, func) extern typeof(func)* func;
    40 #include "FFmpegFunctionList.h"
    41 #undef AV_FUNC
    42 }
    44 #endif // __FFmpegRuntimeLinker_h__

mercurial