Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(529)

Side by Side Diff: chrome/browser/extensions/api/copresence_private/copresence_private_api.cc

Issue 1452853002: Convert vector_as_array to vector::data in //chrome{,cast,os}. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@vector-data
Patch Set: Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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/extensions/api/copresence_private/copresence_private_ap i.h" 5 #include "chrome/browser/extensions/api/copresence_private/copresence_private_ap i.h"
6 6
7 #include <map> 7 #include <map>
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
11 #include "base/guid.h" 11 #include "base/guid.h"
12 #include "base/lazy_instance.h" 12 #include "base/lazy_instance.h"
13 #include "base/stl_util.h"
14 #include "chrome/browser/copresence/chrome_whispernet_client.h" 13 #include "chrome/browser/copresence/chrome_whispernet_client.h"
15 #include "chrome/common/extensions/api/copresence_private.h" 14 #include "chrome/common/extensions/api/copresence_private.h"
16 #include "content/public/browser/browser_thread.h" 15 #include "content/public/browser/browser_thread.h"
17 #include "media/base/audio_bus.h" 16 #include "media/base/audio_bus.h"
18 17
19 using audio_modem::WhispernetClient; 18 using audio_modem::WhispernetClient;
20 using content::BrowserThread; 19 using content::BrowserThread;
21 20
22 namespace extensions { 21 namespace extensions {
23 22
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
117 WhispernetClient* whispernet_client = 116 WhispernetClient* whispernet_client =
118 CopresencePrivateService::GetFactoryInstance()->Get(browser_context()) 117 CopresencePrivateService::GetFactoryInstance()->Get(browser_context())
119 ->GetWhispernetClient(params->client_id); 118 ->GetWhispernetClient(params->client_id);
120 if (whispernet_client->GetSamplesCallback().is_null()) 119 if (whispernet_client->GetSamplesCallback().is_null())
121 return RespondNow(NoArguments()); 120 return RespondNow(NoArguments());
122 121
123 scoped_refptr<media::AudioBusRefCounted> samples = 122 scoped_refptr<media::AudioBusRefCounted> samples =
124 media::AudioBusRefCounted::Create(1, // Mono 123 media::AudioBusRefCounted::Create(1, // Mono
125 params->samples.size() / sizeof(float)); 124 params->samples.size() / sizeof(float));
126 125
127 memcpy(samples->channel(0), vector_as_array(&params->samples), 126 memcpy(samples->channel(0), params->samples.data(), params->samples.size());
128 params->samples.size());
129 127
130 whispernet_client->GetSamplesCallback().Run( 128 whispernet_client->GetSamplesCallback().Run(
131 params->token.audible ? audio_modem::AUDIBLE : audio_modem::INAUDIBLE, 129 params->token.audible ? audio_modem::AUDIBLE : audio_modem::INAUDIBLE,
132 params->token.token, samples); 130 params->token.token, samples);
133 return RespondNow(NoArguments()); 131 return RespondNow(NoArguments());
134 } 132 }
135 133
136 // CopresenceSendInitializedFunction implementation: 134 // CopresenceSendInitializedFunction implementation:
137 ExtensionFunction::ResponseAction 135 ExtensionFunction::ResponseAction
138 CopresencePrivateSendInitializedFunction::Run() { 136 CopresencePrivateSendInitializedFunction::Run() {
139 scoped_ptr<SendInitialized::Params> params( 137 scoped_ptr<SendInitialized::Params> params(
140 SendInitialized::Params::Create(*args_)); 138 SendInitialized::Params::Create(*args_));
141 EXTENSION_FUNCTION_VALIDATE(params.get()); 139 EXTENSION_FUNCTION_VALIDATE(params.get());
142 140
143 CopresencePrivateService::GetFactoryInstance()->Get(browser_context()) 141 CopresencePrivateService::GetFactoryInstance()->Get(browser_context())
144 ->OnWhispernetInitialized(params->success); 142 ->OnWhispernetInitialized(params->success);
145 143
146 return RespondNow(NoArguments()); 144 return RespondNow(NoArguments());
147 } 145 }
148 146
149 } // namespace extensions 147 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698