1/* 2// Copyright (c) 2014 Intel Corporation 3// 4// Licensed under the Apache License, Version 2.0 (the "License"); 5// you may not use this file except in compliance with the License. 6// You may obtain a copy of the License at 7// 8// http://www.apache.org/licenses/LICENSE-2.0 9// 10// Unless required by applicable law or agreed to in writing, software 11// distributed under the License is distributed on an "AS IS" BASIS, 12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13// See the License for the specific language governing permissions and 14// limitations under the License. 15*/ 16#ifndef PRIMARY_DEVICE_H 17#define PRIMARY_DEVICE_H 18 19#include <DisplayPlane.h> 20#include <IVsyncControl.h> 21#include <IBlankControl.h> 22#include <VsyncEventObserver.h> 23#include <HwcLayerList.h> 24#include <PhysicalDevice.h> 25 26namespace android { 27namespace intel { 28 29 30class PrimaryDevice : public PhysicalDevice { 31public: 32 PrimaryDevice(Hwcomposer& hwc, DeviceControlFactory* controlFactory); 33 virtual ~PrimaryDevice(); 34public: 35 virtual bool initialize(); 36 virtual void deinitialize(); 37 38 bool blank(bool blank); 39private: 40 static void repeatedFrameEventListener(void *data); 41 void repeatedFrameListener(); 42}; 43 44} 45} 46 47#endif /* PRIMARY_DEVICE_H */ 48