; -*- scheme -*-

(define-method flags
  (of-object "GstElement")
  (c-name "GST_OBJECT_FLAGS")
  (return-type "GstElementFlags")
)

(define-method set_flag
  (of-object "GstObject")
  (c-name "GST_OBJECT_FLAG_SET")
  (return-type "none")
  (parameters
   '("GstObjectFlags" "flags")
   )
)

(define-method unset_flag
  (of-object "GstObject")
  (c-name "GST_OBJECT_FLAG_UNSET")
  (return-type "none")
  (parameters
   '("GstObjectFlags" "flag")
   )
)

;; DEBUGGING FUNCTIONS FROM PYTHON
;; The c functions don't actually exist

(define-function log
  (c-name "gst_log")
  (return-type "none")
  (parameters
   '("gchar *" "msg")
   )
)

(define-function debug
  (c-name "gst_debug")
  (return-type "none")
  (parameters
   '("gchar *" "msg")
   )
)

(define-function info
  (c-name "gst_info")
  (return-type "none")
  (parameters
   '("gchar *" "msg")
   )
)

(define-function warning
  (c-name "gst_warning")
  (return-type "none")
  (parameters
   '("gchar *" "msg")
   )
)

(define-function error
  (c-name "gst_error")
  (return-type "none")
  (parameters
   '("gchar *" "msg")
   )
)

;; OBJECT DEBUGGING FUNCTIONS FROM PYTHON
;; The c functions don't actually exist

(define-method log
  (of-object "GstObject")
  (c-name "gst_object_log")
  (return-type "none")
  (parameters
   '("gchar *" "msg")
   )
)

(define-method debug
  (of-object "GstObject")
  (c-name "gst_object_debug")
  (return-type "none")
  (parameters
   '("gchar *" "msg")
   )
)

(define-method info
  (of-object "GstObject")
  (c-name "gst_object_info")
  (return-type "none")
  (parameters
   '("gchar *" "msg")
   )
)

(define-method warning
  (of-object "GstObject")
  (c-name "gst_object_warning")
  (return-type "none")
  (parameters
   '("gchar *" "msg")
   )
)

(define-method error
  (of-object "GstObject")
  (c-name "gst_object_error")
  (return-type "none")
  (parameters
   '("gchar *" "msg")
   )
)