diff options
Diffstat (limited to 'intern/audaspace/intern/AUD_SequencerEntry.cpp')
-rw-r--r-- | intern/audaspace/intern/AUD_SequencerEntry.cpp | 57 |
1 files changed, 16 insertions, 41 deletions
diff --git a/intern/audaspace/intern/AUD_SequencerEntry.cpp b/intern/audaspace/intern/AUD_SequencerEntry.cpp index 6e6e2397626..005557bbed1 100644 --- a/intern/audaspace/intern/AUD_SequencerEntry.cpp +++ b/intern/audaspace/intern/AUD_SequencerEntry.cpp @@ -29,11 +29,12 @@ #include "AUD_SequencerEntry.h" #include "AUD_SequencerReader.h" +#include "AUD_MutexLock.h" #include <cmath> #include <limits> -AUD_SequencerEntry::AUD_SequencerEntry(AUD_Reference<AUD_IFactory> sound, float begin, float end, float skip, int id) : +AUD_SequencerEntry::AUD_SequencerEntry(boost::shared_ptr<AUD_IFactory> sound, float begin, float end, float skip, int id) : m_status(0), m_pos_status(1), m_sound_status(0), @@ -85,22 +86,20 @@ void AUD_SequencerEntry::unlock() pthread_mutex_unlock(&m_mutex); } -void AUD_SequencerEntry::setSound(AUD_Reference<AUD_IFactory> sound) +void AUD_SequencerEntry::setSound(boost::shared_ptr<AUD_IFactory> sound) { - lock(); + AUD_MutexLock lock(*this); if(m_sound.get() != sound.get()) { m_sound = sound; m_sound_status++; } - - unlock(); } void AUD_SequencerEntry::move(float begin, float end, float skip) { - lock(); + AUD_MutexLock lock(*this); if(m_begin != begin || m_skip != skip || m_end != end) { @@ -109,17 +108,13 @@ void AUD_SequencerEntry::move(float begin, float end, float skip) m_end = end; m_pos_status++; } - - unlock(); } void AUD_SequencerEntry::mute(bool mute) { - lock(); + AUD_MutexLock lock(*this); m_muted = mute; - - unlock(); } int AUD_SequencerEntry::getID() const @@ -150,7 +145,7 @@ void AUD_SequencerEntry::updateAll(float volume_max, float volume_min, float dis float distance_reference, float attenuation, float cone_angle_outer, float cone_angle_inner, float cone_volume_outer) { - lock(); + AUD_MutexLock lock(*this); if(volume_max != m_volume_max) { @@ -199,8 +194,6 @@ void AUD_SequencerEntry::updateAll(float volume_max, float volume_min, float dis m_cone_volume_outer = cone_volume_outer; m_status++; } - - unlock(); } bool AUD_SequencerEntry::isRelative() @@ -210,15 +203,13 @@ bool AUD_SequencerEntry::isRelative() void AUD_SequencerEntry::setRelative(bool relative) { - lock(); + AUD_MutexLock lock(*this); if(m_relative != relative) { m_relative = relative; m_status++; } - - unlock(); } float AUD_SequencerEntry::getVolumeMaximum() @@ -228,12 +219,10 @@ float AUD_SequencerEntry::getVolumeMaximum() void AUD_SequencerEntry::setVolumeMaximum(float volume) { - lock(); + AUD_MutexLock lock(*this); m_volume_max = volume; m_status++; - - unlock(); } float AUD_SequencerEntry::getVolumeMinimum() @@ -243,12 +232,10 @@ float AUD_SequencerEntry::getVolumeMinimum() void AUD_SequencerEntry::setVolumeMinimum(float volume) { - lock(); + AUD_MutexLock lock(*this); m_volume_min = volume; m_status++; - - unlock(); } float AUD_SequencerEntry::getDistanceMaximum() @@ -258,12 +245,10 @@ float AUD_SequencerEntry::getDistanceMaximum() void AUD_SequencerEntry::setDistanceMaximum(float distance) { - lock(); + AUD_MutexLock lock(*this); m_distance_max = distance; m_status++; - - unlock(); } float AUD_SequencerEntry::getDistanceReference() @@ -273,12 +258,10 @@ float AUD_SequencerEntry::getDistanceReference() void AUD_SequencerEntry::setDistanceReference(float distance) { - lock(); + AUD_MutexLock lock(*this); m_distance_reference = distance; m_status++; - - unlock(); } float AUD_SequencerEntry::getAttenuation() @@ -288,12 +271,10 @@ float AUD_SequencerEntry::getAttenuation() void AUD_SequencerEntry::setAttenuation(float factor) { - lock(); + AUD_MutexLock lock(*this); m_attenuation = factor; m_status++; - - unlock(); } float AUD_SequencerEntry::getConeAngleOuter() @@ -303,12 +284,10 @@ float AUD_SequencerEntry::getConeAngleOuter() void AUD_SequencerEntry::setConeAngleOuter(float angle) { - lock(); + AUD_MutexLock lock(*this); m_cone_angle_outer = angle; m_status++; - - unlock(); } float AUD_SequencerEntry::getConeAngleInner() @@ -318,12 +297,10 @@ float AUD_SequencerEntry::getConeAngleInner() void AUD_SequencerEntry::setConeAngleInner(float angle) { - lock(); + AUD_MutexLock lock(*this); m_cone_angle_inner = angle; m_status++; - - unlock(); } float AUD_SequencerEntry::getConeVolumeOuter() @@ -333,10 +310,8 @@ float AUD_SequencerEntry::getConeVolumeOuter() void AUD_SequencerEntry::setConeVolumeOuter(float volume) { - lock(); + AUD_MutexLock lock(*this); m_cone_volume_outer = volume; m_status++; - - unlock(); } |