| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/copresence/chrome_whispernet_client.h" | 5 #include "chrome/browser/copresence/chrome_whispernet_client.h" |
| 6 | 6 |
| 7 #include "chrome/browser/extensions/api/copresence_private/copresence_private_ap
i.h" | 7 #include "chrome/browser/extensions/api/copresence_private/copresence_private_ap
i.h" |
| 8 #include "chrome/browser/extensions/component_loader.h" | 8 #include "chrome/browser/extensions/component_loader.h" |
| 9 #include "chrome/browser/extensions/extension_service.h" | 9 #include "chrome/browser/extensions/extension_service.h" |
| 10 #include "chrome/common/extensions/api/copresence_private.h" | 10 #include "chrome/common/extensions/api/copresence_private.h" |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 56 void ChromeWhispernetClient::Shutdown() { | 56 void ChromeWhispernetClient::Shutdown() { |
| 57 extension_loaded_callback_.Reset(); | 57 extension_loaded_callback_.Reset(); |
| 58 init_callback_.Reset(); | 58 init_callback_.Reset(); |
| 59 tokens_callback_.Reset(); | 59 tokens_callback_.Reset(); |
| 60 samples_callback_.Reset(); | 60 samples_callback_.Reset(); |
| 61 db_callback_.Reset(); | 61 db_callback_.Reset(); |
| 62 } | 62 } |
| 63 | 63 |
| 64 // Fire an event to request a token encode. | 64 // Fire an event to request a token encode. |
| 65 void ChromeWhispernetClient::EncodeToken(const std::string& token, | 65 void ChromeWhispernetClient::EncodeToken(const std::string& token, |
| 66 bool audible) { | 66 copresence::AudioType type) { |
| 67 DCHECK(extension_loaded_); | 67 DCHECK(extension_loaded_); |
| 68 DCHECK(browser_context_); | 68 DCHECK(browser_context_); |
| 69 DCHECK(extensions::EventRouter::Get(browser_context_)); | 69 DCHECK(extensions::EventRouter::Get(browser_context_)); |
| 70 | 70 |
| 71 scoped_ptr<extensions::Event> event(new extensions::Event( | 71 scoped_ptr<extensions::Event> event(new extensions::Event( |
| 72 extensions::api::copresence_private::OnEncodeTokenRequest::kEventName, | 72 extensions::api::copresence_private::OnEncodeTokenRequest::kEventName, |
| 73 extensions::api::copresence_private::OnEncodeTokenRequest::Create( | 73 extensions::api::copresence_private::OnEncodeTokenRequest::Create( |
| 74 token, audible), | 74 token, type == copresence::AUDIBLE), |
| 75 browser_context_)); | 75 browser_context_)); |
| 76 | 76 |
| 77 extensions::EventRouter::Get(browser_context_) | 77 extensions::EventRouter::Get(browser_context_) |
| 78 ->DispatchEventToExtension(kWhispernetProxyExtensionId, event.Pass()); | 78 ->DispatchEventToExtension(kWhispernetProxyExtensionId, event.Pass()); |
| 79 } | 79 } |
| 80 | 80 |
| 81 // Fire an event to request a decode for the given samples. | 81 // Fire an event to request a decode for the given samples. |
| 82 void ChromeWhispernetClient::DecodeSamples(const std::string& samples) { | 82 void ChromeWhispernetClient::DecodeSamples(copresence::AudioType type, |
| 83 const std::string& samples) { |
| 83 DCHECK(extension_loaded_); | 84 DCHECK(extension_loaded_); |
| 84 DCHECK(browser_context_); | 85 DCHECK(browser_context_); |
| 85 DCHECK(extensions::EventRouter::Get(browser_context_)); | 86 DCHECK(extensions::EventRouter::Get(browser_context_)); |
| 86 | 87 |
| 88 extensions::api::copresence_private::DecodeRequestType request_type; |
| 89 |
| 90 switch (type) { |
| 91 case copresence::AUDIBLE: |
| 92 request_type = |
| 93 extensions::api::copresence_private::DECODE_REQUEST_TYPE_AUDIBLE; |
| 94 break; |
| 95 case copresence::INAUDIBLE: |
| 96 request_type = |
| 97 extensions::api::copresence_private::DECODE_REQUEST_TYPE_INAUDIBLE; |
| 98 break; |
| 99 case copresence::BOTH: |
| 100 request_type = |
| 101 extensions::api::copresence_private::DECODE_REQUEST_TYPE_BOTH; |
| 102 break; |
| 103 default: |
| 104 request_type = |
| 105 extensions::api::copresence_private::DECODE_REQUEST_TYPE_NONE; |
| 106 LOG(ERROR) << "Unknown decode request type received: " << type; |
| 107 } |
| 108 |
| 87 scoped_ptr<extensions::Event> event(new extensions::Event( | 109 scoped_ptr<extensions::Event> event(new extensions::Event( |
| 88 extensions::api::copresence_private::OnDecodeSamplesRequest::kEventName, | 110 extensions::api::copresence_private::OnDecodeSamplesRequest::kEventName, |
| 89 extensions::api::copresence_private::OnDecodeSamplesRequest::Create( | 111 extensions::api::copresence_private::OnDecodeSamplesRequest::Create( |
| 90 samples), | 112 request_type, samples), |
| 91 browser_context_)); | 113 browser_context_)); |
| 92 | 114 |
| 93 extensions::EventRouter::Get(browser_context_) | 115 extensions::EventRouter::Get(browser_context_) |
| 94 ->DispatchEventToExtension(kWhispernetProxyExtensionId, event.Pass()); | 116 ->DispatchEventToExtension(kWhispernetProxyExtensionId, event.Pass()); |
| 95 } | 117 } |
| 96 | 118 |
| 97 void ChromeWhispernetClient::DetectBroadcast() { | 119 void ChromeWhispernetClient::DetectBroadcast() { |
| 98 DCHECK(extension_loaded_); | 120 DCHECK(extension_loaded_); |
| 99 DCHECK(browser_context_); | 121 DCHECK(browser_context_); |
| 100 DCHECK(extensions::EventRouter::Get(browser_context_)); | 122 DCHECK(extensions::EventRouter::Get(browser_context_)); |
| (...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 182 params.play.carrier_frequency = copresence::kDefaultCarrierFrequency; | 204 params.play.carrier_frequency = copresence::kDefaultCarrierFrequency; |
| 183 params.play.repetitions = copresence::kDefaultRepetitions; | 205 params.play.repetitions = copresence::kDefaultRepetitions; |
| 184 | 206 |
| 185 params.record.sample_rate = copresence::kDefaultSampleRate; | 207 params.record.sample_rate = copresence::kDefaultSampleRate; |
| 186 params.record.bits_per_sample = copresence::kDefaultBitsPerSample; | 208 params.record.bits_per_sample = copresence::kDefaultBitsPerSample; |
| 187 params.record.carrier_frequency = copresence::kDefaultCarrierFrequency; | 209 params.record.carrier_frequency = copresence::kDefaultCarrierFrequency; |
| 188 params.record.channels = copresence::kDefaultChannels; | 210 params.record.channels = copresence::kDefaultChannels; |
| 189 | 211 |
| 190 InitializeWhispernet(params); | 212 InitializeWhispernet(params); |
| 191 } | 213 } |
| OLD | NEW |