Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a636433c authored by Glenn Kasten's avatar Glenn Kasten
Browse files

Use C APIs instead of C++ APIs for policy

The C++ APIs are going away.

Note: we use tid == 0 which is not supported yet by the C APIs,
do not submit this until that is added.

Change-Id: I0e90789e6c81c69f2544e899c52421ea5d1342be
parent 9adb1283
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -27,6 +27,7 @@
#include <utils/Errors.h>
#include <binder/IInterface.h>
#include <binder/IMemory.h>
#include <cutils/sched_policy.h>
#include <utils/threads.h>

#include <system/audio.h>
@@ -393,7 +394,7 @@ private:
    audio_io_handle_t       mInput;
    int                     mSessionId;
    int                     mPreviousPriority;          // before start()
    int                     mPreviousSchedulingGroup;
    SchedPolicy             mPreviousSchedulingGroup;
};

}; // namespace android
+2 −1
Original line number Diff line number Diff line
@@ -28,6 +28,7 @@
#include <utils/Errors.h>
#include <binder/IInterface.h>
#include <binder/IMemory.h>
#include <cutils/sched_policy.h>
#include <utils/threads.h>

namespace android {
@@ -536,7 +537,7 @@ protected:
    status_t                mRestoreStatus;
    bool                    mIsTimed;
    int                     mPreviousPriority;          // before start()
    int                     mPreviousSchedulingGroup;
    SchedPolicy             mPreviousSchedulingGroup;
};

class TimedAudioTrack : public AudioTrack
+4 −4
Original line number Diff line number Diff line
@@ -79,7 +79,7 @@ status_t AudioRecord::getMinFrameCount(

AudioRecord::AudioRecord()
    : mStatus(NO_INIT), mSessionId(0),
      mPreviousPriority(ANDROID_PRIORITY_NORMAL), mPreviousSchedulingGroup(ANDROID_TGROUP_DEFAULT)
      mPreviousPriority(ANDROID_PRIORITY_NORMAL), mPreviousSchedulingGroup(SP_DEFAULT)
{
}

@@ -95,7 +95,7 @@ AudioRecord::AudioRecord(
        int notificationFrames,
        int sessionId)
    : mStatus(NO_INIT), mSessionId(0),
      mPreviousPriority(ANDROID_PRIORITY_NORMAL), mPreviousSchedulingGroup(ANDROID_TGROUP_DEFAULT)
      mPreviousPriority(ANDROID_PRIORITY_NORMAL), mPreviousSchedulingGroup(SP_DEFAULT)
{
    mStatus = set(inputSource, sampleRate, format, channelMask,
            frameCount, flags, cbf, user, notificationFrames, sessionId);
@@ -342,7 +342,7 @@ status_t AudioRecord::start(AudioSystem::sync_event_t event, int triggerSession)
                mCondition.signal();
            } else {
                mPreviousPriority = getpriority(PRIO_PROCESS, 0);
                mPreviousSchedulingGroup = androidGetThreadSchedulingGroup(0);
                get_sched_policy(0, &mPreviousSchedulingGroup);
                androidSetThreadPriority(0, ANDROID_PRIORITY_AUDIO);
            }
        } else {
@@ -374,7 +374,7 @@ status_t AudioRecord::stop()
            t->requestExit();
        } else {
            setpriority(PRIO_PROCESS, 0, mPreviousPriority);
            androidSetThreadSchedulingGroup(0, mPreviousSchedulingGroup);
            set_sched_policy(0, mPreviousSchedulingGroup);
        }
    }

+7 −7
Original line number Diff line number Diff line
@@ -84,7 +84,7 @@ AudioTrack::AudioTrack()
    : mStatus(NO_INIT),
      mIsTimed(false),
      mPreviousPriority(ANDROID_PRIORITY_NORMAL),
      mPreviousSchedulingGroup(ANDROID_TGROUP_DEFAULT)
      mPreviousSchedulingGroup(SP_DEFAULT)
{
}

@@ -102,7 +102,7 @@ AudioTrack::AudioTrack(
    : mStatus(NO_INIT),
      mIsTimed(false),
      mPreviousPriority(ANDROID_PRIORITY_NORMAL),
      mPreviousSchedulingGroup(ANDROID_TGROUP_DEFAULT)
      mPreviousSchedulingGroup(SP_DEFAULT)
{
    mStatus = set(streamType, sampleRate, format, channelMask,
            frameCount, flags, cbf, user, notificationFrames,
@@ -123,7 +123,7 @@ AudioTrack::AudioTrack(
        int sessionId)
    : mStatus(NO_INIT),
      mIsTimed(false),
      mPreviousPriority(ANDROID_PRIORITY_NORMAL), mPreviousSchedulingGroup(ANDROID_TGROUP_DEFAULT)
      mPreviousPriority(ANDROID_PRIORITY_NORMAL), mPreviousSchedulingGroup(SP_DEFAULT)
{
    mStatus = set((audio_stream_type_t)streamType, sampleRate, (audio_format_t)format, channelMask,
            frameCount, (audio_output_flags_t)flags, cbf, user, notificationFrames,
@@ -144,7 +144,7 @@ AudioTrack::AudioTrack(
    : mStatus(NO_INIT),
      mIsTimed(false),
      mPreviousPriority(ANDROID_PRIORITY_NORMAL),
      mPreviousSchedulingGroup(ANDROID_TGROUP_DEFAULT)
      mPreviousSchedulingGroup(SP_DEFAULT)
{
    mStatus = set(streamType, sampleRate, format, channelMask,
            0 /*frameCount*/, flags, cbf, user, notificationFrames,
@@ -378,7 +378,7 @@ void AudioTrack::start()
            t->resume();
        } else {
            mPreviousPriority = getpriority(PRIO_PROCESS, 0);
            mPreviousSchedulingGroup = androidGetThreadSchedulingGroup(0);
            get_sched_policy(0, &mPreviousSchedulingGroup);
            androidSetThreadPriority(0, ANDROID_PRIORITY_AUDIO);
        }

@@ -403,7 +403,7 @@ void AudioTrack::start()
                t->pause();
            } else {
                setpriority(PRIO_PROCESS, 0, mPreviousPriority);
                androidSetThreadSchedulingGroup(0, mPreviousSchedulingGroup);
                set_sched_policy(0, mPreviousSchedulingGroup);
            }
        }
    }
@@ -436,7 +436,7 @@ void AudioTrack::stop()
            t->pause();
        } else {
            setpriority(PRIO_PROCESS, 0, mPreviousPriority);
            androidSetThreadSchedulingGroup(0, mPreviousSchedulingGroup);
            set_sched_policy(0, mPreviousSchedulingGroup);
        }
    }