summaryrefslogtreecommitdiffstats
path: root/dom/media/ipc/RemoteDecodeUtils.h
blob: 212250c089f796a673cc85de7bfbece8213c34db (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

#ifndef DOM_MEDIA_IPC_REMOTEDECODEUTILS_H_
#define DOM_MEDIA_IPC_REMOTEDECODEUTILS_H_

#include "mozilla/Logging.h"
#include "mozilla/RemoteDecoderManagerChild.h"
#include "mozilla/ipc/UtilityProcessSandboxing.h"

namespace mozilla {

inline LazyLogModule gRemoteDecodeLog{"RemoteDecode"};

// Return the sandboxing kind of the current utility process. Should only be
// called on the utility process.
ipc::SandboxingKind GetCurrentSandboxingKind();

ipc::SandboxingKind GetSandboxingKindFromLocation(RemoteDecodeIn aLocation);

RemoteDecodeIn GetRemoteDecodeInFromKind(ipc::SandboxingKind aKind);

RemoteDecodeIn GetRemoteDecodeInFromVideoBridgeSource(
    layers::VideoBridgeSource aSource);

const char* RemoteDecodeInToStr(RemoteDecodeIn aLocation);

}  // namespace mozilla

#endif  // DOM_MEDIA_IPC_REMOTEDECODEUTILS_H_