Index: runtime/embedders/openglui/common/sound_handler.h |
=================================================================== |
--- runtime/embedders/openglui/common/sound_handler.h (revision 0) |
+++ runtime/embedders/openglui/common/sound_handler.h (revision 0) |
@@ -0,0 +1,63 @@ |
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
+// for details. All rights reserved. Use of this source code is governed by a |
+// BSD-style license that can be found in the LICENSE file. |
+ |
+#ifndef EMBEDDERS_OPENGLUI_COMMON_SOUND_HANDLER_H_ |
+#define EMBEDDERS_OPENGLUI_COMMON_SOUND_HANDLER_H_ |
+ |
+#include <stdint.h> |
+#include <vector> |
+ |
+#include "embedders/openglui/common/sample.h" |
+ |
+class SoundHandler { |
+ public: |
+ SoundHandler(); |
+ |
+ virtual ~SoundHandler() { |
+ } |
+ |
+ virtual int32_t Start() { |
+ return 0; |
+ } |
+ |
+ virtual void Stop() { |
+ } |
+ |
+ virtual int32_t PlayBackground(const char* path) { |
+ return 0; |
+ } |
+ |
+ virtual void StopBackground() { |
+ } |
+ |
+ // Optional, for preloading. |
+ int32_t LoadSample(const char* path) { |
+ return (GetSample(path) == NULL) ? -1 : 0; |
+ } |
+ |
+ virtual int32_t PlaySample(const char* path) { |
+ return 0; |
+ } |
+ |
+ static SoundHandler* instance() { |
+ return instance_; |
+ } |
+ |
+ protected: |
+ typedef std::vector<Sample*> samples_t; |
+ |
+ Sample* GetSample(const char* path); |
+ |
+ samples_t samples_; |
+ |
+ static SoundHandler* instance_; |
+}; |
+ |
+int32_t PlayBackgroundSound(const char* path); |
+void StopBackgroundSound(); |
+int32_t LoadSoundSample(const char* path); |
+int32_t PlaySoundSample(const char* path); |
+ |
+#endif // EMBEDDERS_OPENGLUI_COMMON_SOUND_HANDLER_H_ |
+ |