1f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier/* 2f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier * Copyright (C) 2016 The Android Open Source Project 3f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier * 4f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier * Licensed under the Apache License, Version 2.0 (the "License"); 5f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier * you may not use this file except in compliance with the License. 6f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier * You may obtain a copy of the License at 7f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier * 8f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier * http://www.apache.org/licenses/LICENSE-2.0 9f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier * 10f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier * Unless required by applicable law or agreed to in writing, software 11f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier * distributed under the License is distributed on an "AS IS" BASIS, 12f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier * See the License for the specific language governing permissions and 14f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier * limitations under the License. 15f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier */ 16f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier 17f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier#ifndef ART_RUNTIME_PROCESS_STATE_H_ 18f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier#define ART_RUNTIME_PROCESS_STATE_H_ 19f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier 20f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartiernamespace art { 21f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier 22f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier// The process state passed in from the activity manager, used to determine when to do trimming 23f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier// and compaction. 24f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartierenum ProcessState { 25f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier kProcessStateJankPerceptible = 0, 26f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier kProcessStateJankImperceptible = 1, 27f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier}; 28f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier 29f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartierstd::ostream& operator<<(std::ostream& os, const ProcessState& process_state); 30f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier 31f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier} // namespace art 32f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier 33f8484c8b55f4b423048f94dfabbe44110a039a9bMathieu Chartier#endif // ART_RUNTIME_PROCESS_STATE_H_ 34