summaryrefslogtreecommitdiff
path: root/src/lib/ector/gl/ector_gl_surface.eo
blob: 19e919c0b88cd552d58306c126e0096dcfb74a7c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
import ector_types;

class @beta Ector.GL.Surface extends Ector.GL.Buffer implements Ector.Surface
{
   [[Ector GL surface class]]
   eo_prefix: ector_gl_surface;
   methods {
      shader_get {
         [[Get shader]]
         return: uint; [[Shader count]]
         params {
            @in flags: uint64; [[Flags]]
         }
      }
      push {
          [[Push surface to GPU]]
         return: bool; [[$true on success, $false otherwise]]
    params {
       @in flags: uint64; [[GL flags]]
       @in vertex: ptr(GLshort); [[GL vertex]]
       @in vertex_count: uint; [[GL vertex count]]
       @in mul_col: uint; [[Premultiplied color]]
    }
      }
      state_define {
          [[Define state]]
         return: bool; [[$true on success, $false otherwise]]
    params {
            @in op: Efl.Gfx.Render_Op; [[Render operation]]
       @in clips: array<ptr(Eina.Rect)>; [[Array of @Eina.Rect clip]]
    }
      }
   }
   implements {
      Ector.Surface.renderer_factory_new;
      Ector.Surface.reference_point { set; }
      Efl.Object.destructor;
      Efl.Object.constructor;
   }
}