Index: media/base/renderer_factory_selector.h |
diff --git a/media/base/renderer_factory_selector.h b/media/base/renderer_factory_selector.h |
index d40c20a32e3f9960feb0dfe9f801f1d5e4ec0f9a..6e4583b80f34aeb38d2dbbcada5b5554c73133c0 100644 |
--- a/media/base/renderer_factory_selector.h |
+++ b/media/base/renderer_factory_selector.h |
@@ -5,6 +5,7 @@ |
#ifndef MEDIA_BASE_RENDERER_FACTORY_SELECTOR_H_ |
#define MEDIA_BASE_RENDERER_FACTORY_SELECTOR_H_ |
+#include "base/callback.h" |
#include "base/optional.h" |
#include "media/base/renderer_factory.h" |
@@ -15,12 +16,14 @@ namespace media { |
// choosing which RendererFactory should be used when creating a new Renderer. |
class MEDIA_EXPORT RendererFactorySelector { |
public: |
+ using UseCourierCB = base::Callback<bool()>; |
+ |
enum FactoryType { |
DEFAULT, // DefaultRendererFactory. |
MOJO, // MojoRendererFactory. |
MEDIA_PLAYER, // MediaPlayerRendererClientFactory. |
- ADAPTIVE, // AdaptiveRendererFactory. |
- FACTORY_TYPE_MAX = ADAPTIVE, |
+ COURIER, // CourierRendererFactory. |
+ FACTORY_TYPE_MAX = COURIER, |
}; |
RendererFactorySelector(); |
@@ -46,11 +49,17 @@ class MEDIA_EXPORT RendererFactorySelector { |
void SetUseMediaPlayer(bool use_media_player); |
#endif |
+ // Sets the callback to check whether we should be temporarily use the COURIER |
+ // factory. |
+ void SetUseCourierCB(UseCourierCB use_courier_cb); |
+ |
private: |
void UpdateCurrentFactory(); |
bool use_media_player_ = false; |
+ UseCourierCB use_courier_cb_; |
miu
2017/05/02 22:40:04
nit: When I see this used in the code, it feels li
tguilbert
2017/05/03 01:34:25
I am using QueryIsRemotingActiveCB for now. I also
|
+ |
bool current_factory_needs_update_ = true; |
miu
2017/05/02 22:40:04
Can we simplify by getting rid of |current_factory
tguilbert
2017/05/03 01:34:25
You are right, this was probably excessive in the
|
RendererFactory* current_factory_ = nullptr; |