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

Unified Diff: examples/audio_play_test/play_tone.cc

Issue 2015643002: Add (optional) options to Run[Main]Application(). (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: doh Created 4 years, 7 months 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 side-by-side diff with in-line comments
Download patch
Index: examples/audio_play_test/play_tone.cc
diff --git a/examples/audio_play_test/play_tone.cc b/examples/audio_play_test/play_tone.cc
index 025bdbb0385b49877d1567963b0e16dd3bd29c97..ccbab467ccc4fab53e44336466eb46ba1cae5b02 100644
--- a/examples/audio_play_test/play_tone.cc
+++ b/examples/audio_play_test/play_tone.cc
@@ -6,10 +6,9 @@
#include <memory>
#include "mojo/public/c/system/main.h"
-#include "mojo/public/cpp/application/application_delegate.h"
-#include "mojo/public/cpp/application/application_impl.h"
-#include "mojo/public/cpp/application/application_runner.h"
+#include "mojo/public/cpp/application/application_impl_base.h"
#include "mojo/public/cpp/application/connect.h"
+#include "mojo/public/cpp/application/run_application.h"
#include "mojo/public/cpp/utility/run_loop.h"
#include "mojo/services/media/audio/interfaces/audio_server.mojom.h"
#include "mojo/services/media/audio/interfaces/audio_track.mojom.h"
@@ -36,13 +35,13 @@ static inline constexpr uint32_t USecToBytes(uint64_t usec) {
return ((usec * SAMP_FREQ) / 1000000) * FRAME_BYTES;
}
-class PlayToneApp : public ApplicationDelegate {
+class PlayToneApp : public ApplicationImplBase {
public:
- ~PlayToneApp() override { Quit(); }
+ ~PlayToneApp() override { OnQuit(); }
- // ApplicationDelegate
- void Initialize(ApplicationImpl* app) override;
- void Quit() override;
+ // ApplicationImplBase overrides:
+ void OnInitialize() override;
+ void OnQuit() override;
private:
void GenerateToneCbk(MediaResult res);
@@ -63,15 +62,15 @@ class PlayToneApp : public ApplicationDelegate {
bool shutting_down_ = false;
};
-void PlayToneApp::Quit() {
+void PlayToneApp::OnQuit() {
timeline_consumer_.reset();
audio_pipe_.reset();
audio_track_.reset();
audio_server_.reset();
}
-void PlayToneApp::Initialize(ApplicationImpl* app) {
- mojo::ConnectToService(app->shell(), "mojo:audio_server",
+void PlayToneApp::OnInitialize() {
+ mojo::ConnectToService(shell(), "mojo:audio_server",
GetProxy(&audio_server_));
audio_server_.set_connection_error_handler([this]() {
OnConnectionError("audio_server");
@@ -233,7 +232,7 @@ void PlayToneApp::PostShutdown() {
}
void PlayToneApp::Shutdown() {
- Quit();
+ OnQuit();
RunLoop::current()->Quit();
}
@@ -243,8 +242,6 @@ void PlayToneApp::Shutdown() {
} // namespace mojo
MojoResult MojoMain(MojoHandle app_request) {
- mojo::ApplicationRunner runner(
- std::unique_ptr<mojo::media::audio::examples::PlayToneApp>(
- new mojo::media::audio::examples::PlayToneApp()));
- return runner.Run(app_request);
+ mojo::media::audio::examples::PlayToneApp play_tone_app;
+ return mojo::RunMainApplication(app_request, &play_tone_app);
}

Powered by Google App Engine
This is Rietveld 408576698