;; From GeglNode

(define-signal invalidated
  (of-object "GeglNode")
  (return-type "void")
  (when "last")
  (parameters
    '("GeglRectangle*" "p0")
  )
)

(define-signal computed
  (of-object "GeglNode")
  (return-type "void")
  (when "last")
  (parameters
    '("GeglRectangle*" "p0")
  )
)

(define-property operation
  (of-object "GeglNode")
  (prop-type "GParamString")
  (docs "The type of associated GeglOperation")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property gegl-operation
  (of-object "GeglNode")
  (prop-type "GParamObject")
  (docs "The associated GeglOperation instance")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property name
  (of-object "GeglNode")
  (prop-type "GParamString")
  (docs "The name of the node")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property dont-cache
  (of-object "GeglNode")
  (prop-type "GParamBoolean")
  (docs "Do not cache the result of this operation, the property is inherited by children created from a node.")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GeglRectangle

;; From GeglColor

(define-property string
  (of-object "GeglColor")
  (prop-type "GParamString")
  (docs "A String representation of the GeglColor")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GeglParamColor

;; From GeglBuffer

(define-signal changed
  (of-object "GeglBuffer")
  (return-type "void")
  (when "last")
  (parameters
    '("GeglRectangle*" "p0")
  )
)

(define-property source
  (of-object "GeglBuffer")
  (prop-type "GParamObject")
  (docs "The tilestore to be a facade for")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property x
  (of-object "GeglBuffer")
  (prop-type "GParamInt")
  (docs "local origin's offset relative to source origin")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property y
  (of-object "GeglBuffer")
  (prop-type "GParamInt")
  (docs "local origin's offset relative to source origin")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property width
  (of-object "GeglBuffer")
  (prop-type "GParamInt")
  (docs "pixel width of buffer")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property height
  (of-object "GeglBuffer")
  (prop-type "GParamInt")
  (docs "pixel height of buffer")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property shift-x
  (of-object "GeglBuffer")
  (prop-type "GParamInt")
  (docs "")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property shift-y
  (of-object "GeglBuffer")
  (prop-type "GParamInt")
  (docs "")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property abyss-x
  (of-object "GeglBuffer")
  (prop-type "GParamInt")
  (docs "")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property abyss-y
  (of-object "GeglBuffer")
  (prop-type "GParamInt")
  (docs "")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property abyss-width
  (of-object "GeglBuffer")
  (prop-type "GParamInt")
  (docs "pixel width of abyss")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property abyss-height
  (of-object "GeglBuffer")
  (prop-type "GParamInt")
  (docs "pixel height of abyss")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property tile-width
  (of-object "GeglBuffer")
  (prop-type "GParamInt")
  (docs "width of a tile")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property tile-height
  (of-object "GeglBuffer")
  (prop-type "GParamInt")
  (docs "height of a tile")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property format
  (of-object "GeglBuffer")
  (prop-type "GParamPointer")
  (docs "babl format")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property px-size
  (of-object "GeglBuffer")
  (prop-type "GParamInt")
  (docs "size of a single pixel in bytes.")
  (readable #t)
  (writable #f)
  (construct-only #f)
)

(define-property pixels
  (of-object "GeglBuffer")
  (prop-type "GParamInt")
  (docs "total amount of pixels in image (width x height)")
  (readable #t)
  (writable #f)
  (construct-only #f)
)

(define-property path
  (of-object "GeglBuffer")
  (prop-type "GParamString")
  (docs "URI to where the buffer is stored")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property backend
  (of-object "GeglBuffer")
  (prop-type "GParamPointer")
  (docs "A custom tile-backend instance to use")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GeglCurve

;; From GeglParamCurve

;; From GeglProcessor

(define-property node
  (of-object "GeglProcessor")
  (prop-type "GParamObject")
  (docs "The GeglNode to process (will saturate the provider's cache if the provided node is a sink node)")
  (readable #f)
  (writable #t)
  (construct-only #f)
)

(define-property chunksize
  (of-object "GeglProcessor")
  (prop-type "GParamInt")
  (docs "Size of chunks being rendered (larger chunks need more memory to do the processing).")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property progress
  (of-object "GeglProcessor")
  (prop-type "GParamDouble")
  (docs "query progress; 0.0 is not started, 1.0 is done.")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property rectangle
  (of-object "GeglProcessor")
  (prop-type "GParamPointer")
  (docs "The rectangle of the region to process.")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GeglPath

(define-signal changed
  (of-object "GeglPath")
  (return-type "void")
  (when "last")
  (parameters
    '("gpointer" "p0")
  )
)

;; From GeglInt32

;; From GeglParamInt32

;; From GeglInt16

;; From GeglParamInt16

;; From GeglInt8

;; From GeglParamInt8

;; From GeglParamString

;; From GeglParamPath

;; From GeglParamMultiline

;; From GeglParamEnum

;; From GeglOperation

;; From GeglOperationSource

(define-property output
  (of-object "GeglOperationSource")
  (prop-type "GParamObject")
  (docs "Ouput pad for generated image buffer.")
  (readable #t)
  (writable #f)
  (construct-only #f)
)

;; From GeglOperationSink

(define-property input
  (of-object "GeglOperationSink")
  (prop-type "GParamObject")
  (docs "Input pad, for image buffer input.")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GeglOperationFilter

(define-property output
  (of-object "GeglOperationFilter")
  (prop-type "GParamObject")
  (docs "Ouput pad for generated image buffer.")
  (readable #t)
  (writable #f)
  (construct-only #f)
)

(define-property input
  (of-object "GeglOperationFilter")
  (prop-type "GParamObject")
  (docs "Input pad, for image buffer input.")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GeglOperationComposer

(define-property output
  (of-object "GeglOperationComposer")
  (prop-type "GParamObject")
  (docs "Ouput pad for generated image buffer.")
  (readable #t)
  (writable #f)
  (construct-only #f)
)

(define-property input
  (of-object "GeglOperationComposer")
  (prop-type "GParamObject")
  (docs "Input pad, for image buffer input.")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property aux
  (of-object "GeglOperationComposer")
  (prop-type "GParamObject")
  (docs "Auxiliary image buffer input pad.")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GeglOperationComposer3

(define-property output
  (of-object "GeglOperationComposer3")
  (prop-type "GParamObject")
  (docs "Ouput pad for generated image buffer.")
  (readable #t)
  (writable #f)
  (construct-only #f)
)

(define-property input
  (of-object "GeglOperationComposer3")
  (prop-type "GParamObject")
  (docs "Input pad, for image buffer input.")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property aux
  (of-object "GeglOperationComposer3")
  (prop-type "GParamObject")
  (docs "Auxiliary image buffer input pad.")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property aux2
  (of-object "GeglOperationComposer3")
  (prop-type "GParamObject")
  (docs "Second auxiliary image buffer input pad.")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GeglOperationPointComposer

(define-property output
  (of-object "GeglOperationPointComposer")
  (prop-type "GParamObject")
  (docs "Ouput pad for generated image buffer.")
  (readable #t)
  (writable #f)
  (construct-only #f)
)

(define-property input
  (of-object "GeglOperationPointComposer")
  (prop-type "GParamObject")
  (docs "Input pad, for image buffer input.")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property aux
  (of-object "GeglOperationPointComposer")
  (prop-type "GParamObject")
  (docs "Auxiliary image buffer input pad.")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GeglOperationPointComposer3

(define-property output
  (of-object "GeglOperationPointComposer3")
  (prop-type "GParamObject")
  (docs "Ouput pad for generated image buffer.")
  (readable #t)
  (writable #f)
  (construct-only #f)
)

(define-property input
  (of-object "GeglOperationPointComposer3")
  (prop-type "GParamObject")
  (docs "Input pad, for image buffer input.")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property aux
  (of-object "GeglOperationPointComposer3")
  (prop-type "GParamObject")
  (docs "Auxiliary image buffer input pad.")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property aux2
  (of-object "GeglOperationPointComposer3")
  (prop-type "GParamObject")
  (docs "Second auxiliary image buffer input pad.")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GeglOperationPointFilter

(define-property output
  (of-object "GeglOperationPointFilter")
  (prop-type "GParamObject")
  (docs "Ouput pad for generated image buffer.")
  (readable #t)
  (writable #f)
  (construct-only #f)
)

(define-property input
  (of-object "GeglOperationPointFilter")
  (prop-type "GParamObject")
  (docs "Input pad, for image buffer input.")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GeglOperationPointRender

(define-property output
  (of-object "GeglOperationPointRender")
  (prop-type "GParamObject")
  (docs "Ouput pad for generated image buffer.")
  (readable #t)
  (writable #f)
  (construct-only #f)
)

;; From GeglOperationAreaFilter

(define-property output
  (of-object "GeglOperationAreaFilter")
  (prop-type "GParamObject")
  (docs "Ouput pad for generated image buffer.")
  (readable #t)
  (writable #f)
  (construct-only #f)
)

(define-property input
  (of-object "GeglOperationAreaFilter")
  (prop-type "GParamObject")
  (docs "Input pad, for image buffer input.")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GeglOperationMeta

;; From GeglOperationTemporal

(define-property output
  (of-object "GeglOperationTemporal")
  (prop-type "GParamObject")
  (docs "Ouput pad for generated image buffer.")
  (readable #t)
  (writable #f)
  (construct-only #f)
)

(define-property input
  (of-object "GeglOperationTemporal")
  (prop-type "GParamObject")
  (docs "Input pad, for image buffer input.")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

