summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGlenn Kasten <gkasten@google.com>2014-05-14 15:06:00 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2014-05-14 15:06:01 +0000
commitdeb9081a61b446dbe50461082974a4228899f178 (patch)
treec33345fcecaed0e76e22173f5ca1fdfe8286b028
parentcbe6fddebe3ec84176037de7f9681d2407fa1113 (diff)
parent755b0a611f539dfa49e88aac592a938427c7e1b8 (diff)
downloadframeworks_av-deb9081a61b446dbe50461082974a4228899f178.zip
frameworks_av-deb9081a61b446dbe50461082974a4228899f178.tar.gz
frameworks_av-deb9081a61b446dbe50461082974a4228899f178.tar.bz2
Merge "Pull up mFlags and isFastTrack from Track to TrackBase"
-rw-r--r--services/audioflinger/PlaybackTracks.h3
-rw-r--r--services/audioflinger/RecordTracks.h2
-rw-r--r--services/audioflinger/Threads.cpp2
-rw-r--r--services/audioflinger/TrackBase.h3
-rw-r--r--services/audioflinger/Tracks.cpp12
5 files changed, 12 insertions, 10 deletions
diff --git a/services/audioflinger/PlaybackTracks.h b/services/audioflinger/PlaybackTracks.h
index e9c6834..08b1728 100644
--- a/services/audioflinger/PlaybackTracks.h
+++ b/services/audioflinger/PlaybackTracks.h
@@ -115,7 +115,6 @@ public:
void invalidate();
bool isInvalid() const { return mIsInvalid; }
virtual bool isTimedTrack() const { return false; }
- bool isFastTrack() const { return (mFlags & IAudioFlinger::TRACK_FAST) != 0; }
int fastIndex() const { return mFastIndex; }
protected:
@@ -142,8 +141,6 @@ protected:
// audio HAL when this track will be fully rendered
// zero means not monitoring
private:
- IAudioFlinger::track_flags_t mFlags;
-
// The following fields are only for fast tracks, and should be in a subclass
int mFastIndex; // index within FastMixerState::mFastTracks[];
// either mFastIndex == -1 if not isFastTrack()
diff --git a/services/audioflinger/RecordTracks.h b/services/audioflinger/RecordTracks.h
index 4ca2ad4..fe15571 100644
--- a/services/audioflinger/RecordTracks.h
+++ b/services/audioflinger/RecordTracks.h
@@ -30,7 +30,7 @@ public:
size_t frameCount,
int sessionId,
int uid,
- bool isFast);
+ IAudioFlinger::track_flags_t flags);
virtual ~RecordTrack();
virtual status_t start(AudioSystem::sync_event_t event, int triggerSession);
diff --git a/services/audioflinger/Threads.cpp b/services/audioflinger/Threads.cpp
index 8243a8b..2d4e025 100644
--- a/services/audioflinger/Threads.cpp
+++ b/services/audioflinger/Threads.cpp
@@ -5142,7 +5142,7 @@ sp<AudioFlinger::RecordThread::RecordTrack> AudioFlinger::RecordThread::createRe
track = new RecordTrack(this, client, sampleRate,
format, channelMask, frameCount, sessionId, uid,
- (*flags & IAudioFlinger::TRACK_FAST) != 0);
+ *flags);
lStatus = track->initCheck();
if (lStatus != NO_ERROR) {
diff --git a/services/audioflinger/TrackBase.h b/services/audioflinger/TrackBase.h
index 06023fd..5f13be3 100644
--- a/services/audioflinger/TrackBase.h
+++ b/services/audioflinger/TrackBase.h
@@ -48,6 +48,7 @@ public:
const sp<IMemory>& sharedBuffer,
int sessionId,
int uid,
+ IAudioFlinger::track_flags_t flags,
bool isOut,
bool useReadOnlyHeap = false);
virtual ~TrackBase();
@@ -63,6 +64,7 @@ public:
virtual status_t setSyncEvent(const sp<SyncEvent>& event);
sp<IMemory> getBuffers() const { return mBufferMemory; }
+ bool isFastTrack() const { return (mFlags & IAudioFlinger::TRACK_FAST) != 0; }
protected:
TrackBase(const TrackBase&);
@@ -134,6 +136,7 @@ protected:
const int mSessionId;
int mUid;
Vector < sp<SyncEvent> >mSyncEvents;
+ const IAudioFlinger::track_flags_t mFlags;
const bool mIsOut;
ServerProxy* mServerProxy;
const int mId;
diff --git a/services/audioflinger/Tracks.cpp b/services/audioflinger/Tracks.cpp
index 88ead74..6dc7f30 100644
--- a/services/audioflinger/Tracks.cpp
+++ b/services/audioflinger/Tracks.cpp
@@ -69,6 +69,7 @@ AudioFlinger::ThreadBase::TrackBase::TrackBase(
const sp<IMemory>& sharedBuffer,
int sessionId,
int clientUid,
+ IAudioFlinger::track_flags_t flags,
bool isOut,
bool useReadOnlyHeap)
: RefBase(),
@@ -85,6 +86,7 @@ AudioFlinger::ThreadBase::TrackBase::TrackBase(
mChannelCount * audio_bytes_per_sample(format) : sizeof(int8_t)),
mFrameCount(frameCount),
mSessionId(sessionId),
+ mFlags(flags),
mIsOut(isOut),
mServerProxy(NULL),
mId(android_atomic_inc(&nextTrackId)),
@@ -349,7 +351,7 @@ AudioFlinger::PlaybackThread::Track::Track(
int uid,
IAudioFlinger::track_flags_t flags)
: TrackBase(thread, client, sampleRate, format, channelMask, frameCount, sharedBuffer,
- sessionId, uid, true /*isOut*/),
+ sessionId, uid, flags, true /*isOut*/),
mFillingUpStatus(FS_INVALID),
// mRetryCount initialized later when needed
mSharedBuffer(sharedBuffer),
@@ -359,7 +361,6 @@ AudioFlinger::PlaybackThread::Track::Track(
mAuxBuffer(NULL),
mAuxEffectId(0), mHasVolumeController(false),
mPresentationCompleteFrames(0),
- mFlags(flags),
mFastIndex(-1),
mCachedVolume(1.0),
mIsInvalid(false),
@@ -1833,10 +1834,11 @@ AudioFlinger::RecordThread::RecordTrack::RecordTrack(
size_t frameCount,
int sessionId,
int uid,
- bool isFast)
+ IAudioFlinger::track_flags_t flags)
: TrackBase(thread, client, sampleRate, format,
- channelMask, frameCount, 0 /*sharedBuffer*/, sessionId, uid, false /*isOut*/,
- isFast /*useReadOnlyHeap*/),
+ channelMask, frameCount, 0 /*sharedBuffer*/, sessionId, uid,
+ flags, false /*isOut*/,
+ (flags & IAudioFlinger::TRACK_FAST) != 0 /*useReadOnlyHeap*/),
mOverflow(false), mResampler(NULL), mRsmpOutBuffer(NULL), mRsmpOutFrameCount(0),
// See real initialization of mRsmpInFront at RecordThread::start()
mRsmpInUnrel(0), mRsmpInFront(0), mFramesToDrop(0), mResamplerBufferProvider(NULL)