aboutsummaryrefslogtreecommitdiff
path: root/engines/titanic/sound/audio_buffer.h
diff options
context:
space:
mode:
authorPaul Gilbert2017-09-16 15:23:43 -0400
committerPaul Gilbert2017-09-16 15:23:43 -0400
commit3e5515cc21d8e898fd69464643255d135c5b942d (patch)
tree2f0c9351f8fdfb517d4e743d54f7d7e60f5e6aa4 /engines/titanic/sound/audio_buffer.h
parent09931ae0aa11aafa8ad6324a92fafd1fbcd678af (diff)
downloadscummvm-rg350-3e5515cc21d8e898fd69464643255d135c5b942d.tar.gz
scummvm-rg350-3e5515cc21d8e898fd69464643255d135c5b942d.tar.bz2
scummvm-rg350-3e5515cc21d8e898fd69464643255d135c5b942d.zip
TITANIC: Improve audio buffer critial section handling
Diffstat (limited to 'engines/titanic/sound/audio_buffer.h')
-rw-r--r--engines/titanic/sound/audio_buffer.h19
1 files changed, 12 insertions, 7 deletions
diff --git a/engines/titanic/sound/audio_buffer.h b/engines/titanic/sound/audio_buffer.h
index ad8c3e4064..c775c5bb35 100644
--- a/engines/titanic/sound/audio_buffer.h
+++ b/engines/titanic/sound/audio_buffer.h
@@ -34,6 +34,16 @@ class CAudioBuffer {
private:
Common::Mutex _mutex;
FixedQueue<int16, AUDIO_SAMPLING_RATE * 4> _data;
+private:
+ /**
+ * Enters a critical section
+ */
+ void enterCriticalSection();
+
+ /**
+ * Leave a critical section
+ */
+ void leaveCriticalSection();
public:
bool _finished;
public:
@@ -80,14 +90,9 @@ public:
int16 pop();
/**
- * Enters a critical section
- */
- void enterCriticalSection();
-
- /**
- * Leave a critical section
+ * Reads out a specified number of samples
*/
- void leaveCriticalSection();
+ int read(int16 *values, int count);
};
} // End of namespace Titanic