Home | History | Annotate | Download | only in include
      1 /*
      2 // Copyright(c)2014 IntelCorporation
      3 //
      4 // LicensedundertheApacheLicense,Version2.0(the"License");
      5 // youmaynotusethisfileexceptincompliancewiththeLicense.
      6 // YoumayobtainacopyoftheLicenseat
      7 //
      8 // http://www.apache.org/licenses/LICENSE-2.0
      9 //
     10 // Unlessrequiredbyapplicablelaworagreedtoinwriting,software
     11 // distributedundertheLicenseisdistributedonan"ASIS"BASIS,
     12 // WITHOUTWARRANTIESORCONDITIONSOFANYKIND,eitherexpressorimplied.
     13 // SeetheLicenseforthespecificlanguagegoverningpermissionsand
     14 // limitationsundertheLicense.
     15 */
     16 #ifndef IDISPLAY_CONTEXT_H
     17 #define IDISPLAY_CONTEXT_H
     18 
     19 #include <hardware/hwcomposer.h>
     20 
     21 namespace android {
     22 namespace intel {
     23 
     24 class HwcLayerList;
     25 
     26 class IDisplayContext {
     27 public:
     28     IDisplayContext() {}
     29     virtual ~IDisplayContext() {}
     30 public:
     31     virtual bool initialize() = 0;
     32     virtual void deinitialize() = 0;
     33     virtual bool commitBegin(size_t numDisplays, hwc_display_contents_1_t **displays) = 0;
     34     virtual bool commitContents(hwc_display_contents_1_t *display, HwcLayerList *layerList) = 0;
     35     virtual bool commitEnd(size_t numDisplays, hwc_display_contents_1_t **displays) = 0;
     36     virtual bool compositionComplete() = 0;
     37     virtual bool setCursorPosition(int disp, int x, int y) = 0;
     38 };
     39 
     40 }
     41 }
     42 
     43 #endif /* IDISPLAY_CONTEXT_H */
     44