Chromium Code Reviews| Index: chrome/browser/media/router/media_source.h |
| diff --git a/chrome/browser/media/router/media_source.h b/chrome/browser/media/router/media_source.h |
| index d90497f2aef1dacda374321e798eaca9f4260179..fbf95278f0d48a42ae6b4efdbf7cc2a09cc3db7f 100644 |
| --- a/chrome/browser/media/router/media_source.h |
| +++ b/chrome/browser/media/router/media_source.h |
| @@ -5,20 +5,42 @@ |
| #ifndef CHROME_BROWSER_MEDIA_ROUTER_MEDIA_SOURCE_H_ |
| #define CHROME_BROWSER_MEDIA_ROUTER_MEDIA_SOURCE_H_ |
| +#include <ostream> |
| #include <string> |
| namespace media_router { |
| +using MediaSourceId = std::string; |
| + |
| class MediaSource { |
| public: |
| - explicit MediaSource(const std::string& id); |
| + explicit MediaSource(const MediaSourceId& id); |
| + MediaSource(); |
| ~MediaSource(); |
| // Gets the ID of the media source. |
| - std::string id() const; |
| + MediaSourceId id() const; |
| + |
| + // Returns true if two MediaSource objects use the same media ID. |
| + bool Equals(const MediaSource& other) const; |
| + |
| + // Returns true if a MediaSource is empty or uninitialized. |
| + bool Empty() const; |
| + |
| + // Used for logging. |
| + std::string ToString() const; |
| private: |
| - std::string id_; |
| + MediaSourceId id_; |
| +}; |
| + |
| +// Inequality comparison functor to provide map lookup capabilities for |
| +// MediaSource. |
| +class MediaSourceLess { |
| + public: |
| + bool operator()(const MediaSource& lhs, const MediaSource& rhs) const { |
| + return lhs.id() < rhs.id(); |
|
xhwang
2015/04/06 20:51:31
Comparing strings isn't efficient. Consider using
imcheng
2015/04/06 21:54:20
Replaced this class with a struct Hash.
|
| + } |
| }; |
| } // namespace media_router |