;; From GdaBatch

(define-signal changed
  (of-object "GdaBatch")
  (return-type "void")
  (when "first")
  (parameters
    '("GObject*" "p0")
  )
)

;; From GdaColumn

(define-signal name-changed
  (of-object "GdaColumn")
  (return-type "void")
  (when "last")
  (parameters
    '("const-gchar*" "p0")
  )
)

(define-signal g-type-changed
  (of-object "GdaColumn")
  (return-type "void")
  (when "last")
  (parameters
    '("GType" "p0")
    '("GType" "p1")
  )
)

(define-property id
  (of-object "GdaColumn")
  (prop-type "GParamString")
  (docs "Column's Id (warning: the column's ID is not guaranteed to be unique in a GdaDataModel)")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GdaConfig

(define-signal dsn-changed
  (of-object "GdaConfig")
  (return-type "void")
  (when "first")
  (parameters
    '("gpointer" "p0")
  )
)

(define-signal dsn-added
  (of-object "GdaConfig")
  (return-type "void")
  (when "first")
  (parameters
    '("gpointer" "p0")
  )
)

(define-signal dsn-to-be-removed
  (of-object "GdaConfig")
  (return-type "void")
  (when "first")
  (parameters
    '("gpointer" "p0")
  )
)

(define-signal dsn-removed
  (of-object "GdaConfig")
  (return-type "void")
  (when "first")
  (parameters
    '("gpointer" "p0")
  )
)

(define-property system-filename
  (of-object "GdaConfig")
  (prop-type "GParamString")
  (docs "File to use for system-wide DSN list")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property user-filename
  (of-object "GdaConfig")
  (prop-type "GParamString")
  (docs "File to use for per-user DSN list")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GdaConnection

(define-signal error
  (of-object "GdaConnection")
  (return-type "void")
  (when "last")
  (parameters
    '("GdaConnectionEvent*" "p0")
  )
)

(define-signal conn-opened
  (of-object "GdaConnection")
  (return-type "void")
  (when "first")
)

(define-signal conn-to-close
  (of-object "GdaConnection")
  (return-type "void")
  (when "first")
)

(define-signal conn-closed
  (of-object "GdaConnection")
  (return-type "void")
  (when "last")
)

(define-signal dsn-changed
  (of-object "GdaConnection")
  (return-type "void")
  (when "last")
)

(define-signal transaction-status-changed
  (of-object "GdaConnection")
  (return-type "void")
  (when "last")
)

(define-property dsn
  (of-object "GdaConnection")
  (prop-type "GParamString")
  (docs "DSN to use")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property cnc-string
  (of-object "GdaConnection")
  (prop-type "GParamString")
  (docs "Connection string to use")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property provider
  (of-object "GdaConnection")
  (prop-type "GParamObject")
  (docs "Provider to use")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property auth-string
  (of-object "GdaConnection")
  (prop-type "GParamString")
  (docs "Authentication string to use")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property options
  (of-object "GdaConnection")
  (prop-type "GParamFlags")
  (docs "Options")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property meta-store
  (of-object "GdaConnection")
  (prop-type "GParamObject")
  (docs "GdaMetaStore used by the connection")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property thread-owner
  (of-object "GdaConnection")
  (prop-type "GParamPointer")
  (docs "Unique GThread from which the connection will be available.This should only be modified by the database providers' implementation")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property is-wrapper
  (of-object "GdaConnection")
  (prop-type "GParamBoolean")
  (docs "Tells if the connection acts as a thread wrapper around another connection, making it completely thread safe")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property monitor-wrapped-in-mainloop
  (of-object "GdaConnection")
  (prop-type "GParamBoolean")
  (docs "Make the connection set up a monitoring function in the mainloop to monitor the wrapped connection")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property events-history-size
  (of-object "GdaConnection")
  (prop-type "GParamInt")
  (docs "")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GdaConnectionEvent

(define-property type
  (of-object "GdaConnectionEvent")
  (prop-type "GParamInt")
  (docs "Connection event type")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GdaDataAccessWrapper

(define-property model
  (of-object "GdaDataAccessWrapper")
  (prop-type "GParamObject")
  (docs "Data model being wrapped")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

;; From GdaDataComparator

(define-signal diff-computed
  (of-object "GdaDataComparator")
  (return-type "gboolean")
  (when "last")
  (parameters
    '("gpointer" "p0")
  )
)

(define-property old-model
  (of-object "GdaDataComparator")
  (prop-type "GParamObject")
  (docs "")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property new-model
  (of-object "GdaDataComparator")
  (prop-type "GParamObject")
  (docs "")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GdaDataHandler

;; From GdaDataModelArray

(define-property read-only
  (of-object "GdaDataModelArray")
  (prop-type "GParamBoolean")
  (docs "Whether data model can be modified")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property n-columns
  (of-object "GdaDataModelArray")
  (prop-type "GParamUInt")
  (docs "The number of columns in the model")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GdaDataModelDir

(define-property basedir
  (of-object "GdaDataModelDir")
  (prop-type "GParamString")
  (docs "Base directory")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

;; From GdaDataModel

(define-signal reset
  (of-object "GdaDataModel")
  (return-type "void")
  (when "last")
)

(define-signal changed
  (of-object "GdaDataModel")
  (return-type "void")
  (when "last")
)

(define-signal row-inserted
  (of-object "GdaDataModel")
  (return-type "void")
  (when "last")
  (parameters
    '("gint" "p0")
  )
)

(define-signal row-updated
  (of-object "GdaDataModel")
  (return-type "void")
  (when "last")
  (parameters
    '("gint" "p0")
  )
)

(define-signal row-removed
  (of-object "GdaDataModel")
  (return-type "void")
  (when "last")
  (parameters
    '("gint" "p0")
  )
)

;; From GdaDataModelImport

(define-property random-access
  (of-object "GdaDataModelImport")
  (prop-type "GParamBoolean")
  (docs "Random access to the data model is possible")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property filename
  (of-object "GdaDataModelImport")
  (prop-type "GParamString")
  (docs "File to import")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property data-string
  (of-object "GdaDataModelImport")
  (prop-type "GParamString")
  (docs "String to import")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property xml-node
  (of-object "GdaDataModelImport")
  (prop-type "GParamPointer")
  (docs "XML node to import from")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property options
  (of-object "GdaDataModelImport")
  (prop-type "GParamObject")
  (docs "Options to configure the import")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property strict
  (of-object "GdaDataModelImport")
  (prop-type "GParamBoolean")
  (docs "Consider missing or too much values an error")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GdaDataModelIter

(define-signal row-changed
  (of-object "GdaDataModelIter")
  (return-type "void")
  (when "first")
  (parameters
    '("gint" "p0")
  )
)

(define-signal end-of-data
  (of-object "GdaDataModelIter")
  (return-type "void")
  (when "first")
)

(define-property id
  (of-object "GdaDataModelIter")
  (prop-type "GParamString")
  (docs "Id")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property name
  (of-object "GdaDataModelIter")
  (prop-type "GParamString")
  (docs "Name")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property description
  (of-object "GdaDataModelIter")
  (prop-type "GParamString")
  (docs "Description")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property holders
  (of-object "GdaDataModelIter")
  (prop-type "GParamPointer")
  (docs "GdaHolder objects the set should contain")
  (readable #f)
  (writable #t)
  (construct-only #t)
)

(define-property data-model
  (of-object "GdaDataModelIter")
  (prop-type "GParamObject")
  (docs "Data model for which the iter is for")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property current-row
  (of-object "GdaDataModelIter")
  (prop-type "GParamInt")
  (docs "Current represented row in the data model")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property forced-model
  (of-object "GdaDataModelIter")
  (prop-type "GParamObject")
  (docs "Overrides the data model the iter is attached to (reserved for internal usage)")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property update-model
  (of-object "GdaDataModelIter")
  (prop-type "GParamBoolean")
  (docs "")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GdaDataProxy

(define-signal row-delete-changed
  (of-object "GdaDataProxy")
  (return-type "void")
  (when "first")
  (parameters
    '("gint" "p0")
    '("gboolean" "p1")
  )
)

(define-signal sample-size-changed
  (of-object "GdaDataProxy")
  (return-type "void")
  (when "first")
  (parameters
    '("gint" "p0")
  )
)

(define-signal sample-changed
  (of-object "GdaDataProxy")
  (return-type "void")
  (when "first")
  (parameters
    '("gint" "p0")
    '("gint" "p1")
  )
)

(define-signal validate-row-changes
  (of-object "GdaDataProxy")
  (return-type "GError*")
  (when "last")
  (parameters
    '("gint" "p0")
    '("gint" "p1")
  )
)

(define-signal row-changes-applied
  (of-object "GdaDataProxy")
  (return-type "void")
  (when "first")
  (parameters
    '("gint" "p0")
    '("gint" "p1")
  )
)

(define-signal filter-changed
  (of-object "GdaDataProxy")
  (return-type "void")
  (when "first")
)

(define-property model
  (of-object "GdaDataProxy")
  (prop-type "GParamObject")
  (docs "Proxied data model")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property prepend-null-entry
  (of-object "GdaDataProxy")
  (prop-type "GParamBoolean")
  (docs "Tells if a row composed of NULL values is inserted as the proxy's first row")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property defer-sync
  (of-object "GdaDataProxy")
  (prop-type "GParamBoolean")
  (docs "Tells if changes to the sample of rows displayed is done in background in several steps or if it's done in one step.")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property sample-size
  (of-object "GdaDataProxy")
  (prop-type "GParamInt")
  (docs "Number of rows which the proxy will contain at any time, like a sliding window on the proxied data model")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GdaDataSelect

(define-property connection
  (of-object "GdaDataSelect")
  (prop-type "GParamObject")
  (docs "Connection from which this data model is created")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property prepared-stmt
  (of-object "GdaDataSelect")
  (prop-type "GParamObject")
  (docs "Associated prepared statement (for internal usage)")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property model-usage
  (of-object "GdaDataSelect")
  (prop-type "GParamUInt")
  (docs "Determines how the data model may be used")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property store-all-rows
  (of-object "GdaDataSelect")
  (prop-type "GParamBoolean")
  (docs "Tells if model has analyzed all the rows")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property exec-params
  (of-object "GdaDataSelect")
  (prop-type "GParamObject")
  (docs "GdaSet used when the SELECT statement was executed")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property insert-stmt
  (of-object "GdaDataSelect")
  (prop-type "GParamObject")
  (docs "INSERT Statement to be executed to add data")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property update-stmt
  (of-object "GdaDataSelect")
  (prop-type "GParamObject")
  (docs "UPDATE Statement to be executed to update data")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property delete-stmt
  (of-object "GdaDataSelect")
  (prop-type "GParamObject")
  (docs "DELETE Statement to be executed to remove data")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property select-stmt
  (of-object "GdaDataSelect")
  (prop-type "GParamObject")
  (docs "SELECT statement which was executed to yield to the data model")
  (readable #t)
  (writable #f)
  (construct-only #f)
)

(define-property auto-reset
  (of-object "GdaDataSelect")
  (prop-type "GParamBoolean")
  (docs "Automatically re-run the SELECT statement if any parameter has changed since it was first executed")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GdaHolder

(define-signal source-changed
  (of-object "GdaHolder")
  (return-type "void")
  (when "first")
)

(define-signal changed
  (of-object "GdaHolder")
  (return-type "void")
  (when "first")
)

(define-signal attribute-changed
  (of-object "GdaHolder")
  (return-type "void")
  (when "first")
  (parameters
    '("const-gchar*" "p0")
    '("GValue*" "p1")
  )
)

(define-signal validate-change
  (of-object "GdaHolder")
  (return-type "GError*")
  (when "last")
  (parameters
    '("GValue*" "p0")
  )
)

(define-property id
  (of-object "GdaHolder")
  (prop-type "GParamString")
  (docs "Holder's ID")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property name
  (of-object "GdaHolder")
  (prop-type "GParamString")
  (docs "Holder's name")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property description
  (of-object "GdaHolder")
  (prop-type "GParamString")
  (docs "Holder's description")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property simple-bind
  (of-object "GdaHolder")
  (prop-type "GParamObject")
  (docs "Make value holder follow other GdaHolder's changes")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property full-bind
  (of-object "GdaHolder")
  (prop-type "GParamObject")
  (docs "Make value holder follow other GdaHolder's changes and the other way around")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property source-model
  (of-object "GdaHolder")
  (prop-type "GParamObject")
  (docs "Data model among which the holder's value should be")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property source-column
  (of-object "GdaHolder")
  (prop-type "GParamInt")
  (docs "Column number to use in coordination with the source-model property")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property g-type
  (of-object "GdaHolder")
  (prop-type "GParamGType")
  (docs "Holder's GType")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property not-null
  (of-object "GdaHolder")
  (prop-type "GParamBoolean")
  (docs "Can the value holder be NULL?")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GdaMetaStore

(define-signal suggest-update
  (of-object "GdaMetaStore")
  (return-type "GError*")
  (when "last")
  (parameters
    '("GdaMetaContext" "p0")
  )
)

(define-signal meta-changed
  (of-object "GdaMetaStore")
  (return-type "void")
  (when "first")
  (parameters
    '("GdaSList" "p0")
  )
)

(define-signal meta-reset
  (of-object "GdaMetaStore")
  (return-type "void")
  (when "first")
)

(define-property cnc-string
  (of-object "GdaMetaStore")
  (prop-type "GParamString")
  (docs "Connection string for the internal connection to use")
  (readable #f)
  (writable #t)
  (construct-only #t)
)

(define-property cnc
  (of-object "GdaMetaStore")
  (prop-type "GParamObject")
  (docs "Connection object internally used")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property catalog
  (of-object "GdaMetaStore")
  (prop-type "GParamString")
  (docs "Catalog in which the database objects will be created")
  (readable #f)
  (writable #t)
  (construct-only #t)
)

(define-property schema
  (of-object "GdaMetaStore")
  (prop-type "GParamString")
  (docs "Schema in which the database objects will be created")
  (readable #f)
  (writable #t)
  (construct-only #t)
)

;; From GdaMetaStruct

(define-property meta-store
  (of-object "GdaMetaStruct")
  (prop-type "GParamObject")
  (docs "GdaMetaStore object to fetch information from")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property features
  (of-object "GdaMetaStruct")
  (prop-type "GParamUInt")
  (docs "")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

;; From GdaRow

(define-property nb-values
  (of-object "GdaRow")
  (prop-type "GParamInt")
  (docs "Number of values in the row")
  (readable #f)
  (writable #t)
  (construct-only #f)
)

;; From GdaServerOperation

(define-signal sequence-item-added
  (of-object "GdaServerOperation")
  (return-type "void")
  (when "first")
  (parameters
    '("const-gchar*" "p0")
    '("gint" "p1")
  )
)

(define-signal sequence-item-remove
  (of-object "GdaServerOperation")
  (return-type "void")
  (when "first")
  (parameters
    '("const-gchar*" "p0")
    '("gint" "p1")
  )
)

(define-property connection
  (of-object "GdaServerOperation")
  (prop-type "GParamObject")
  (docs "Connection to use")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property provider
  (of-object "GdaServerOperation")
  (prop-type "GParamObject")
  (docs "Database provider which created the object")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property op-type
  (of-object "GdaServerOperation")
  (prop-type "GParamInt")
  (docs "Type of operation to be done")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property spec-filename
  (of-object "GdaServerOperation")
  (prop-type "GParamString")
  (docs "XML file which contains the object's data structure")
  (readable #f)
  (writable #t)
  (construct-only #t)
)

;; From GdaServerProvider

;; From GdaSet

(define-signal holder-changed
  (of-object "GdaSet")
  (return-type "void")
  (when "first")
  (parameters
    '("GdaHolder*" "p0")
  )
)

(define-signal validate-holder-change
  (of-object "GdaSet")
  (return-type "GError*")
  (when "last")
  (parameters
    '("GdaHolder*" "p0")
    '("GValue*" "p1")
  )
)

(define-signal validate-set
  (of-object "GdaSet")
  (return-type "GError*")
  (when "last")
)

(define-signal holder-attr-changed
  (of-object "GdaSet")
  (return-type "void")
  (when "first")
  (parameters
    '("GdaHolder*" "p0")
    '("const-gchar*" "p1")
    '("GValue*" "p2")
  )
)

(define-signal public-data-changed
  (of-object "GdaSet")
  (return-type "void")
  (when "first")
)

(define-signal holder-type-set
  (of-object "GdaSet")
  (return-type "void")
  (when "first")
  (parameters
    '("GdaHolder*" "p0")
  )
)

(define-signal source-model-changed
  (of-object "GdaSet")
  (return-type "void")
  (when "first")
  (parameters
    '("gpointer" "p0")
  )
)

(define-property id
  (of-object "GdaSet")
  (prop-type "GParamString")
  (docs "Id")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property name
  (of-object "GdaSet")
  (prop-type "GParamString")
  (docs "Name")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property description
  (of-object "GdaSet")
  (prop-type "GParamString")
  (docs "Description")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property holders
  (of-object "GdaSet")
  (prop-type "GParamPointer")
  (docs "GdaHolder objects the set should contain")
  (readable #f)
  (writable #t)
  (construct-only #t)
)

;; From GdaStatement

(define-signal reset
  (of-object "GdaStatement")
  (return-type "void")
  (when "first")
)

(define-signal checked
  (of-object "GdaStatement")
  (return-type "void")
  (when "first")
  (parameters
    '("GdaConnection*" "p0")
    '("gboolean" "p1")
  )
)

(define-property structure
  (of-object "GdaStatement")
  (prop-type "GParamPointer")
  (docs "")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GdaTransactionStatus

;; From GdaXaTransaction

(define-property format-id
  (of-object "GdaXaTransaction")
  (prop-type "GParamUInt")
  (docs "")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property transaction-id
  (of-object "GdaXaTransaction")
  (prop-type "GParamString")
  (docs "")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

;; From GdaSqlParser

(define-property tokenizer-flavour
  (of-object "GdaSqlParser")
  (prop-type "GParamInt")
  (docs "")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property mode
  (of-object "GdaSqlParser")
  (prop-type "GParamInt")
  (docs "")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property line-error
  (of-object "GdaSqlParser")
  (prop-type "GParamInt")
  (docs "")
  (readable #t)
  (writable #f)
  (construct-only #f)
)

(define-property column-error
  (of-object "GdaSqlParser")
  (prop-type "GParamInt")
  (docs "")
  (readable #t)
  (writable #f)
  (construct-only #f)
)

;; From GdaSqlBuilder

(define-property stmt-type
  (of-object "GdaSqlBuilder")
  (prop-type "GParamEnum")
  (docs "Statement Type")
  (readable #f)
  (writable #t)
  (construct-only #t)
)

