File qatomic-qt-4.4.diff of Package muse2

diff -Burbp muse-2.0svn347.orig/muse/audioprefetch.cpp muse-2.0svn347/muse/audioprefetch.cpp
--- muse-2.0svn347.orig/muse/audioprefetch.cpp	2008-03-31 03:07:04.000000000 +0200
+++ muse-2.0svn347/muse/audioprefetch.cpp	2008-05-15 23:14:32.000000000 +0200
@@ -134,7 +134,7 @@ void AudioPrefetch::msgSeek(unsigned sam
       if (samplePos == seekPos)
             return;
 
-      q_atomic_increment(&seekCount);
+      seekCount.ref();
       PrefetchMsg msg;
       msg.id  = PREFETCH_SEEK;
       msg.pos = samplePos;
@@ -191,6 +191,6 @@ void AudioPrefetch::seek(unsigned seekTo
       writePos = seekTo;
 	prefetch(true);
       seekPos = seekTo;
-      q_atomic_decrement(&seekCount);
+      seekCount.deref();
       }
 
diff -Burbp muse-2.0svn347.orig/muse/audioprefetch.h muse-2.0svn347/muse/audioprefetch.h
--- muse-2.0svn347.orig/muse/audioprefetch.h	2008-03-31 03:07:04.000000000 +0200
+++ muse-2.0svn347/muse/audioprefetch.h	2008-05-15 23:14:32.000000000 +0200
@@ -24,6 +24,8 @@
 #include "thread.h"
 #include "fifo.h"
 
+#include <QtCore/QAtomicInt>
+
 //---------------------------------------------------------
 //   AudioPrefetch
 //---------------------------------------------------------
@@ -36,7 +38,7 @@ class AudioPrefetch : public Thread {
       virtual void processMsg1(const void*);
       void prefetch(bool seekFlag);
       void seek(unsigned pos);
-      volatile int seekCount;
+      QAtomicInt seekCount;
 
    public:
       AudioPrefetch(const char* name);
diff -Burbp muse-2.0svn347.orig/muse/audiowriteback.cpp muse-2.0svn347/muse/audiowriteback.cpp
--- muse-2.0svn347.orig/muse/audiowriteback.cpp	2008-03-31 03:07:04.000000000 +0200
+++ muse-2.0svn347/muse/audiowriteback.cpp	2008-05-15 23:14:32.000000000 +0200
@@ -65,7 +65,7 @@ void AudioWriteback::start(int priority)
 void AudioWriteback::processMsg1(const void*)
       {
       while (counter) {
-            q_atomic_decrement(&counter);
+        counter.deref();
       	OutputList* ol = song->outputs();
       	if (!ol->empty()) {
             	AudioOutput* ao = ol->front();
@@ -88,8 +88,7 @@ void AudioWriteback::processMsg1(const v
 
 void AudioWriteback::trigger()
 	{
-	q_atomic_increment(&counter);
-      if (counter < 2) {
+      if (counter.ref() < 2) {
       	if (sendMsg1("0", 1)) {
             	printf("AudioWriteback::msgTick(): send failed!\n");
                   }
diff -Burbp muse-2.0svn347.orig/muse/audiowriteback.h muse-2.0svn347/muse/audiowriteback.h
--- muse-2.0svn347.orig/muse/audiowriteback.h	2008-03-31 03:07:03.000000000 +0200
+++ muse-2.0svn347/muse/audiowriteback.h	2008-05-15 23:14:32.000000000 +0200
@@ -23,13 +23,15 @@
 
 #include "thread.h"
 
+#include <QtCore/QAtomicInt>
+
 //---------------------------------------------------------
 //   AudioWriteback
 //---------------------------------------------------------
 
 class AudioWriteback : public Thread {
       virtual void processMsg1(const void*);
-      volatile int counter;
+      QAtomicInt counter;
 
    public:
       AudioWriteback(const char* name);
diff -Burbp muse-2.0svn347.orig/muse/driver/alsamidi.cpp muse-2.0svn347/muse/driver/alsamidi.cpp
--- muse-2.0svn347.orig/muse/driver/alsamidi.cpp	2008-03-31 03:07:00.000000000 +0200
+++ muse-2.0svn347/muse/driver/alsamidi.cpp	2008-05-15 23:14:32.000000000 +0200
@@ -43,7 +43,7 @@ bool PortRouteFifo::put(const PortRoute&
       if (size < PORT_ROUTE_FIFO_SIZE) {
             fifo[wIndex] = event;
             wIndex = (wIndex + 1) % PORT_ROUTE_FIFO_SIZE;
-            q_atomic_increment(&size);
+            size.ref();
             return false;
             }
       return true;
@@ -57,7 +57,7 @@ PortRoute PortRouteFifo::get()
       {
       PortRoute event(fifo[rIndex]);
       rIndex = (rIndex + 1) % PORT_ROUTE_FIFO_SIZE;
-      q_atomic_decrement(&size);
+      size.deref();
       return event;
       }
 
diff -Burbp muse-2.0svn347.orig/muse/driver/alsamidi.h muse-2.0svn347/muse/driver/alsamidi.h
--- muse-2.0svn347.orig/muse/driver/alsamidi.h	2008-03-31 03:07:00.000000000 +0200
+++ muse-2.0svn347/muse/driver/alsamidi.h	2008-05-15 23:14:32.000000000 +0200
@@ -24,6 +24,8 @@
 #include <alsa/asoundlib.h>
 #include "driver.h"
 
+#include <QtCore/QAtomicInt>
+
 class MidiSeq;
 class MidiEvent;
 
@@ -43,7 +45,7 @@ struct PortRoute {
 
 class PortRouteFifo {
       PortRoute fifo[PORT_ROUTE_FIFO_SIZE];
-      volatile int size;
+      QAtomicInt size;
       int wIndex;
       int rIndex;
 
diff -Burbp muse-2.0svn347.orig/muse/fifo.cpp muse-2.0svn347/muse/fifo.cpp
--- muse-2.0svn347.orig/muse/fifo.cpp	2008-03-31 03:07:03.000000000 +0200
+++ muse-2.0svn347/muse/fifo.cpp	2008-05-15 23:14:32.000000000 +0200
@@ -30,7 +30,6 @@ void FifoBase::clear()
 	{
 	ridx    = 0;
       widx    = 0;
-      counter = 0;
       }
 
 //---------------------------------------------------------
@@ -40,7 +39,7 @@ void FifoBase::clear()
 void FifoBase::push()
       {
       widx = (widx + 1) % FIFO_BUFFER;
-      q_atomic_increment(&counter);
+      counter.ref();
       }
 
 //---------------------------------------------------------
@@ -50,7 +49,7 @@ void FifoBase::push()
 void FifoBase::pop()
       {
       ridx = (ridx + 1) % FIFO_BUFFER;
-      q_atomic_decrement(&counter);
+      counter.deref();
       }
 
 //---------------------------------------------------------
diff -Burbp muse-2.0svn347.orig/muse/fifo.h muse-2.0svn347/muse/fifo.h
--- muse-2.0svn347.orig/muse/fifo.h	2008-03-31 03:07:03.000000000 +0200
+++ muse-2.0svn347/muse/fifo.h	2008-05-15 23:14:32.000000000 +0200
@@ -21,6 +21,8 @@
 #ifndef __FIFO_H__
 #define __FIFO_H__
 
+#include <QtCore/QAtomicInt>
+
 const int FIFO_BUFFER = 256;
 
 //---------------------------------------------------------
@@ -56,7 +58,7 @@ class FifoBase {
    protected:
       int ridx;               // read index
       int widx;               // write index
-      volatile int counter;   // objects in fifo
+      QAtomicInt counter;   // objects in fifo
 
    public:
       FifoBase()          { clear(); }
diff -Burbp muse-2.0svn347.orig/muse/midififo.cpp muse-2.0svn347/muse/midififo.cpp
--- muse-2.0svn347.orig/muse/midififo.cpp	2008-03-31 03:07:04.000000000 +0200
+++ muse-2.0svn347/muse/midififo.cpp	2008-05-15 23:14:32.000000000 +0200
@@ -30,7 +30,7 @@ bool MidiFifo::put(const MidiEvent& even
       if (size < MIDI_FIFO_SIZE) {
             fifo[wIndex] = event;
             wIndex = (wIndex + 1) % MIDI_FIFO_SIZE;
-            q_atomic_increment(&size);
+            size.ref();
             return false;
             }
       return true;
@@ -44,7 +44,7 @@ MidiEvent MidiFifo::get()
       {
       MidiEvent event(fifo[rIndex]);
       rIndex = (rIndex + 1) % MIDI_FIFO_SIZE;
-      q_atomic_decrement(&size);
+      size.deref();
       return event;
       }
 
@@ -65,7 +65,7 @@ const MidiEvent& MidiFifo::peek(int n)
 void MidiFifo::remove()
       {
       rIndex = (rIndex + 1) % MIDI_FIFO_SIZE;
-      q_atomic_decrement(&size);
+      size.deref();
       }
 
 //---------------------------------------------------------
@@ -78,7 +78,7 @@ bool MidiOutFifo::put(const MidiOutEvent
       if (size < MIDI_FIFO_SIZE) {
             fifo[wIndex] = event;
             wIndex = (wIndex + 1) % MIDI_FIFO_SIZE;
-            q_atomic_increment(&size);
+            size.ref();
             return false;
             }
       return true;
@@ -92,7 +92,7 @@ MidiOutEvent MidiOutFifo::get()
       {
       MidiOutEvent event(fifo[rIndex]);
       rIndex = (rIndex + 1) % MIDI_FIFO_SIZE;
-      q_atomic_decrement(&size);
+      size.deref();
       return event;
       }
 
Only in muse-2.0svn347/muse: midififo.cpp.orig
diff -Burbp muse-2.0svn347.orig/muse/midififo.h muse-2.0svn347/muse/midififo.h
--- muse-2.0svn347.orig/muse/midififo.h	2008-03-31 03:07:04.000000000 +0200
+++ muse-2.0svn347/muse/midififo.h	2008-05-15 23:14:32.000000000 +0200
@@ -26,13 +26,15 @@
 
 #define MIDI_FIFO_SIZE    512
 
+#include <QtCore/QAtomicInt>
+
 //---------------------------------------------------------
 //   MidiFifo
 //---------------------------------------------------------
 
 class MidiFifo {
       MidiEvent fifo[MIDI_FIFO_SIZE];
-      volatile int size;
+      QAtomicInt size;
       int wIndex;
       int rIndex;
 
@@ -75,7 +77,7 @@ typedef MidiOutEventList::const_iterator
 
 class MidiOutFifo {
       MidiOutEvent fifo[MIDI_FIFO_SIZE];
-      volatile int size;
+      QAtomicInt size;
       int wIndex;
       int rIndex;
 
Only in muse-2.0svn347/muse: midififo.h.orig
Only in muse-2.0svn347/muse: midiinport.cpp.orig
Only in muse-2.0svn347/muse: midiinport.cpp.rej
diff -Burbp muse-2.0svn347.orig/muse/midiinport.h muse-2.0svn347/muse/midiinport.h
--- muse-2.0svn347.orig/muse/midiinport.h	2008-03-31 03:07:04.000000000 +0200
+++ muse-2.0svn347/muse/midiinport.h	2008-05-15 23:14:32.000000000 +0200
@@ -25,6 +25,8 @@
 #include "miditrackbase.h"
 #include "midievent.h"
 
+#include <QtCore/QAtomicInt>
+
 static const int RECORD_FIFO_SIZE = 512;
 
 //---------------------------------------------------------
Only in muse-2.0svn347/muse: midiinport.h.orig
Only in muse-2.0svn347/muse: midiinport.h.rej
openSUSE Build Service is sponsored by