Index: media/base/text_track.h |
diff --git a/media/base/text_track.h b/media/base/text_track.h |
index 01a2ed727f90bc3ce9880796185b9ab782536c5d..5d85b86b4c658a06c350c9c7db15eb3ca4de18a0 100644 |
--- a/media/base/text_track.h |
+++ b/media/base/text_track.h |
@@ -5,6 +5,7 @@ |
#ifndef MEDIA_BASE_TEXT_TRACK_H_ |
#define MEDIA_BASE_TEXT_TRACK_H_ |
+#include <map> |
#include <string> |
#include "base/callback.h" |
@@ -32,10 +33,34 @@ class TextTrack { |
const std::string& settings) = 0; |
}; |
-typedef base::Callback<scoped_ptr<TextTrack> |
- (TextKind kind, |
- const std::string& label, |
- const std::string& language)> AddTextTrackCB; |
+class TextTrackConfig { |
acolwell GONE FROM CHROMIUM
2013/10/24 18:57:51
nit: Please put this class in its own file like th
Matthew Heaney (Chromium)
2013/10/25 03:05:38
Done.
|
+ public: |
+ TextTrackConfig(); |
+ TextTrackConfig(TextKind kind, |
+ const std::string& label, |
+ const std::string& language); |
+ |
+ // Returns true if all fields in |config| match this config. |
+ bool Matches(const TextTrackConfig& config) const; |
+ |
+ TextKind kind() const; |
+ const std::string& label() const; |
+ const std::string& language() const; |
+ |
+ private: |
+ TextKind kind_; |
+ std::string label_; |
+ std::string language_; |
+}; |
+ |
+typedef base::Callback<void |
+ (scoped_ptr<TextTrack>)> AddTextTrackDoneCB; |
+ |
+typedef base::Callback<void |
+ (const TextTrackConfig& config, |
+ const AddTextTrackDoneCB& done_cb)> AddTextTrackCB; |
+ |
+typedef std::map<int, TextTrackConfig> TextTrackConfigMap; |
} // namespace media |