31 lines
658 B
C
31 lines
658 B
C
|
|
#ifdef MTK_SF_PERF_API
|
||
|
|
#pragma once
|
||
|
|
|
||
|
|
#include "sf_perf/PerfHelper.h"
|
||
|
|
|
||
|
|
namespace android {
|
||
|
|
class PerfHelper;
|
||
|
|
typedef PerfHelper* (*createPerfHelperFn)();
|
||
|
|
typedef void (*DestroyPerfHelperFn)(PerfHelper*);
|
||
|
|
typedef int (*SetUclampMinFn)(PerfHelper*, pid_t, int);
|
||
|
|
|
||
|
|
class SFPerfAPILoader {
|
||
|
|
public:
|
||
|
|
|
||
|
|
static SFPerfAPILoader& getInstance();
|
||
|
|
|
||
|
|
~SFPerfAPILoader();
|
||
|
|
int perfUclampMinRequest(pid_t pid, int uClampMin);
|
||
|
|
|
||
|
|
private:
|
||
|
|
SFPerfAPILoader();
|
||
|
|
|
||
|
|
// handle of dlopen latency library
|
||
|
|
void* m_so_handle;
|
||
|
|
PerfHelper* mPerfHelper;
|
||
|
|
DestroyPerfHelperFn mFnDestroyPerfHelper;
|
||
|
|
SetUclampMinFn mFnSetUclampMin;
|
||
|
|
};
|
||
|
|
} // namespace android
|
||
|
|
#endif
|