1f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Li/*
2cd727f537d5085eec7f1b8f9c1d33922d4de75d4Prodyut Hazarika// Copyright (c) 2014 Intel Corporation 
3cd727f537d5085eec7f1b8f9c1d33922d4de75d4Prodyut Hazarika//
4cd727f537d5085eec7f1b8f9c1d33922d4de75d4Prodyut Hazarika// Licensed under the Apache License, Version 2.0 (the "License");
5cd727f537d5085eec7f1b8f9c1d33922d4de75d4Prodyut Hazarika// you may not use this file except in compliance with the License.
6cd727f537d5085eec7f1b8f9c1d33922d4de75d4Prodyut Hazarika// You may obtain a copy of the License at
7cd727f537d5085eec7f1b8f9c1d33922d4de75d4Prodyut Hazarika//
8cd727f537d5085eec7f1b8f9c1d33922d4de75d4Prodyut Hazarika//      http://www.apache.org/licenses/LICENSE-2.0
9cd727f537d5085eec7f1b8f9c1d33922d4de75d4Prodyut Hazarika//
10cd727f537d5085eec7f1b8f9c1d33922d4de75d4Prodyut Hazarika// Unless required by applicable law or agreed to in writing, software
11cd727f537d5085eec7f1b8f9c1d33922d4de75d4Prodyut Hazarika// distributed under the License is distributed on an "AS IS" BASIS,
12cd727f537d5085eec7f1b8f9c1d33922d4de75d4Prodyut Hazarika// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13cd727f537d5085eec7f1b8f9c1d33922d4de75d4Prodyut Hazarika// See the License for the specific language governing permissions and
14cd727f537d5085eec7f1b8f9c1d33922d4de75d4Prodyut Hazarika// limitations under the License.
15cd727f537d5085eec7f1b8f9c1d33922d4de75d4Prodyut Hazarika*/
16f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Li#ifndef PLATF_HWCOMPOSER_H
17f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Li#define PLATF_HWCOMPOSER_H
18f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Li
19f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Li#include <hal_public.h>
20f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Li#include <Hwcomposer.h>
21f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Li
22f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Linamespace android {
23f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Linamespace intel {
24f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Li
25f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Liclass PlatfHwcomposer : public Hwcomposer {
26f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Lipublic:
27f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Li    PlatfHwcomposer();
28f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Li    virtual ~PlatfHwcomposer();
29f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Li
30f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Liprotected:
31f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Li    DisplayPlaneManager* createDisplayPlaneManager();
32f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Li    BufferManager* createBufferManager();
33f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Li    IDisplayDevice* createDisplayDevice(int disp, DisplayPlaneManager& dpm);
34f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Li    IDisplayContext* createDisplayContext();
35f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Li};
36f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Li
37f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Li} //namespace intel
38f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Li} //namespace android
39f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Li
40f6d5b36e320f093f08855d64fa3d565eacae3c4bJackie Li#endif /* PLATF_HWCOMPOSER_H */
41