// -*- c++ -*-
// Generated by gtkmmproc -- DO NOT MODIFY!
#ifndef _LIBGDAMM_DATAMODEL_P_H
#define _LIBGDAMM_DATAMODEL_P_H
#include <glibmm/private/object_p.h>

#include <glibmm/class.h>

namespace Gnome
{

namespace Gda
{

class DataModel_Class : public Glib::Class
{
public:
#ifndef DOXYGEN_SHOULD_SKIP_THIS
  typedef DataModel CppObjectType;
  typedef GdaDataModel BaseObjectType;
  typedef GdaDataModelClass BaseClassType;
  typedef Glib::Object_Class CppClassParent;
  typedef GObjectClass BaseClassParent;

  friend class DataModel;
#endif /* DOXYGEN_SHOULD_SKIP_THIS */

  const Glib::Class& init();

  static void class_init_function(void* g_class, void* class_data);

  static Glib::ObjectBase* wrap_new(GObject*);

protected:

  //Callbacks (default signal handlers):
  //These will call the *_impl member methods, which will then call the existing default signal callbacks, if any.
  //You could prevent the original default signal handlers being called by overriding the *_impl method.
  static void changed_callback(GdaDataModel* self);

  //Callbacks (virtual functions):
  static int get_n_rows_vfunc_callback(GdaDataModel* self);
  static int get_n_columns_vfunc_callback(GdaDataModel* self);
  static GdaFieldAttributes* describe_column_vfunc_callback(GdaDataModel* self, int col);
  static const GdaValue* get_value_at_vfunc_callback(GdaDataModel* self, int col, int row);
};


} // namespace Gda

} // namespace Gnome

#endif /* _LIBGDAMM_DATAMODEL_P_H */

