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

Commit 9c0227a6 authored by Glenn Kasten's avatar Glenn Kasten
Browse files

JetPlayer uses C++ Thread not createThreadEtc

This permits leveraging future improvements to Thread.

Change-Id: I60deed8565ed54f13d9f770c76504e411b154276
parent 5a471818
Loading
Loading
Loading
Loading
+22 −1
Original line number Diff line number Diff line
@@ -65,7 +65,6 @@ public:


private:
    static  int         renderThread(void*);
    int                 render();
    void                fireUpdateOnStatusChange();
    void                fireEventsFromJetQueue();
@@ -97,6 +96,28 @@ private:

    char                mJetFilePath[256];

    class JetPlayerThread : public Thread {
    public:
        JetPlayerThread(JetPlayer *player) : mPlayer(player) {
        }

    protected:
        virtual ~JetPlayerThread() {}

    private:
        JetPlayer *mPlayer;

        bool threadLoop() {
            int result;
            result = mPlayer->render();
            return false;
        }

        JetPlayerThread(const JetPlayerThread &);
        JetPlayerThread &operator=(const JetPlayerThread &);
    };

    sp<JetPlayerThread> mThread;

}; // end class JetPlayer

+2 −7
Original line number Diff line number Diff line
@@ -100,7 +100,8 @@ int JetPlayer::init()
    {
        Mutex::Autolock l(mMutex);
        ALOGV("JetPlayer::init(): trying to start render thread");
        createThreadEtc(renderThread, this, "jetRenderThread", ANDROID_PRIORITY_AUDIO);
        mThread = new JetPlayerThread(this);
        mThread->run("jetRenderThread", ANDROID_PRIORITY_AUDIO);
        mCondition.wait(mMutex);
    }
    if (mTid > 0) {
@@ -155,12 +156,6 @@ int JetPlayer::release()
}


//-------------------------------------------------------------------------------------------------
int JetPlayer::renderThread(void* p) {

    return ((JetPlayer*)p)->render();
}

//-------------------------------------------------------------------------------------------------
int JetPlayer::render() {
    EAS_RESULT result = EAS_FAILURE;