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

Commit cd7f6eb1 authored by Matt Buckley's avatar Matt Buckley
Browse files

Make sendHint private in platform

 * Convert PerformanceHintManager sendHint to a private API
 * Have HWUI depend on private implementation

Bug: b/261640114
Test: atest PerformanceHintNativeTestCases
Test: atest FrameworksCoreTests:android.os.PerformanceHintManagerTest

Change-Id: I9d13f1eaff856dc3d38de5f6c1b5cf92a75f6ec3
parent 73b15009
Loading
Loading
Loading
Loading
+0 −41
Original line number Diff line number Diff line
@@ -87,36 +87,6 @@ typedef struct APerformanceHintManager APerformanceHintManager;
 */
typedef struct APerformanceHintSession APerformanceHintSession;

/**
 * Hints for the session used by {@link APerformanceHint_sendHint} to signal upcoming changes
 * in the mode or workload.
 */
enum SessionHint {
    /**
     * This hint indicates a sudden increase in CPU workload intensity. It means
     * that this hint session needs extra CPU resources immediately to meet the
     * target duration for the current work cycle.
     */
    CPU_LOAD_UP = 0,
    /**
     * This hint indicates a decrease in CPU workload intensity. It means that
     * this hint session can reduce CPU resources and still meet the target duration.
     */
    CPU_LOAD_DOWN = 1,
    /*
     * This hint indicates an upcoming CPU workload that is completely changed and
     * unknown. It means that the hint session should reset CPU resources to a known
     * baseline to prepare for an arbitrary load, and must wake up if inactive.
     */
    CPU_LOAD_RESET = 2,
    /*
     * This hint indicates that the most recent CPU workload is resuming after a
     * period of inactivity. It means that the hint session should allocate similar
     * CPU resources to what was used previously, and must wake up if inactive.
     */
    CPU_LOAD_RESUME = 3,
};

/**
  * Acquire an instance of the performance hint manager.
  *
@@ -189,17 +159,6 @@ int APerformanceHint_reportActualWorkDuration(
void APerformanceHint_closeSession(
        APerformanceHintSession* session) __INTRODUCED_IN(__ANDROID_API_T__);

/**
 * Sends performance hints to inform the hint session of changes in the workload.
 *
 * @param session The performance hint session instance to update.
 * @param hint The hint to send to the session.
 * @return 0 on success
 *         EPIPE if communication with the system service has failed.
 */
int APerformanceHint_sendHint(
        APerformanceHintSession* session, int hint) __INTRODUCED_IN(__ANDROID_API_U__);

__END_DECLS

#endif // ANDROID_NATIVE_PERFORMANCE_HINT_H
+39 −0
Original line number Diff line number Diff line
@@ -24,6 +24,45 @@ __BEGIN_DECLS
 */
void APerformanceHint_setIHintManagerForTesting(void* iManager);

/**
 * Hints for the session used to signal upcoming changes in the mode or workload.
 */
enum SessionHint {
    /**
     * This hint indicates a sudden increase in CPU workload intensity. It means
     * that this hint session needs extra CPU resources immediately to meet the
     * target duration for the current work cycle.
     */
    CPU_LOAD_UP = 0,
    /**
     * This hint indicates a decrease in CPU workload intensity. It means that
     * this hint session can reduce CPU resources and still meet the target duration.
     */
    CPU_LOAD_DOWN = 1,
    /*
     * This hint indicates an upcoming CPU workload that is completely changed and
     * unknown. It means that the hint session should reset CPU resources to a known
     * baseline to prepare for an arbitrary load, and must wake up if inactive.
     */
    CPU_LOAD_RESET = 2,
    /*
     * This hint indicates that the most recent CPU workload is resuming after a
     * period of inactivity. It means that the hint session should allocate similar
     * CPU resources to what was used previously, and must wake up if inactive.
     */
    CPU_LOAD_RESUME = 3,
};

/**
 * Sends performance hints to inform the hint session of changes in the workload.
 *
 * @param session The performance hint session instance to update.
 * @param hint The hint to send to the session.
 * @return 0 on success
 *         EPIPE if communication with the system service has failed.
 */
int APerformanceHint_sendHint(void* session, int hint);

__END_DECLS

#endif // ANDROID_PRIVATE_NATIVE_PERFORMANCE_HINT_PRIVATE_H