Index: public/platform/WebSourceInfo.h |
diff --git a/public/platform/WebRTCDTMFSenderHandler.h b/public/platform/WebSourceInfo.h |
similarity index 57% |
copy from public/platform/WebRTCDTMFSenderHandler.h |
copy to public/platform/WebSourceInfo.h |
index 53c88a463eddfe06e7fa29fe7566d7f75f943e2d..0ae96e78fd9703599fc7687c4ad745e45e07829b 100644 |
--- a/public/platform/WebRTCDTMFSenderHandler.h |
+++ b/public/platform/WebSourceInfo.h |
@@ -23,27 +23,57 @@ |
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
*/ |
-#ifndef WebRTCDTMFSenderHandler_h |
-#define WebRTCDTMFSenderHandler_h |
+#ifndef WebSourceInfo_h |
+#define WebSourceInfo_h |
#include "WebCommon.h" |
+#include "WebNonCopyable.h" |
+#include "WebPrivatePtr.h" |
#include "WebString.h" |
namespace WebKit { |
-class WebRTCDTMFSenderHandlerClient; |
-class WebRTCDTMFSenderHandler { |
+class WebSourceInfoPrivate; |
+ |
+class WebSourceInfo { |
public: |
- virtual ~WebRTCDTMFSenderHandler() { } |
+ enum SourceKind { |
+ SourceKindNone, |
+ SourceKindAudio, |
+ SourceKindVideo |
+ }; |
+ |
+ enum VideoFacingMode { |
+ VideoFacingModeNone, |
+ VideoFacingModeUser, |
+ VideoFacingModeEnvironment |
+ }; |
+ |
+ WebSourceInfo() { } |
+ WebSourceInfo(const WebSourceInfo& other) { assign(other); } |
+ ~WebSourceInfo() { reset(); } |
+ |
+ WebSourceInfo& operator=(const WebSourceInfo& other) |
+ { |
+ assign(other); |
+ return *this; |
+ } |
+ |
+ WEBKIT_EXPORT void assign(const WebSourceInfo&); |
- virtual void setClient(WebRTCDTMFSenderHandlerClient*) = 0; |
+ WEBKIT_EXPORT void initialize(const WebString& id, SourceKind, const WebString& label, VideoFacingMode); |
+ WEBKIT_EXPORT void reset(); |
+ bool isNull() const { return m_private.isNull(); } |
- virtual WebString currentToneBuffer() = 0; |
+ WEBKIT_EXPORT WebString id() const; |
+ WEBKIT_EXPORT SourceKind kind() const; |
+ WEBKIT_EXPORT WebString label() const; |
+ WEBKIT_EXPORT VideoFacingMode facing() const; |
- virtual bool canInsertDTMF() = 0; |
- virtual bool insertDTMF(const WebString& tones, long duration, long interToneGap) = 0; |
+private: |
+ WebPrivatePtr<WebSourceInfoPrivate> m_private; |
}; |
} // namespace WebKit |
-#endif // WebRTCDTMFSenderHandler_h |
+#endif // WebSourceInfo_h |