コード例 #1
0
ファイル: coords-line.c プロジェクト: svn2github/gwyddion
static void     gwy_coords_line_serializable_init(GwySerializableInterface *iface);
static gsize    gwy_coords_line_n_items          (GwySerializable *serializable);
static gsize    gwy_coords_line_itemize          (GwySerializable *serializable,
                                                  GwySerializableItems *items);
static gboolean gwy_coords_line_construct        (GwySerializable *serializable,
                                                  GwySerializableItems *items,
                                                  GwyErrorList **error_list);

static const guint dimension_map[SHAPE_SIZE] = { 0, 1, 0, 1 };

static GwySerializableInterface *parent_serializable = NULL;

G_DEFINE_TYPE_EXTENDED
    (GwyCoordsLine, gwy_coords_line, GWY_TYPE_COORDS, 0,
     GWY_IMPLEMENT_SERIALIZABLE(gwy_coords_line_serializable_init));

static void
gwy_coords_line_serializable_init(GwySerializableInterface *iface)
{
    parent_serializable = g_type_interface_peek_parent(iface);
    iface->n_items   = gwy_coords_line_n_items;
    iface->itemize   = gwy_coords_line_itemize;
    iface->construct = gwy_coords_line_construct;
}

static void
gwy_coords_line_class_init(GwyCoordsLineClass *klass)
{
    GwyCoordsClass *coords_class = GWY_COORDS_CLASS(klass);
コード例 #2
0
ファイル: gwysiunit.c プロジェクト: svn2github/gwyddion
    "1e", NULL, NULL, " ", "/", " "
};

static const GwySIStyleSpec *format_styles[] = {
    NULL,
    &format_style_plain,
    &format_style_markup,
    &format_style_vfmarkup,
    &format_style_TeX,
};

static guint si_unit_signals[LAST_SIGNAL] = { 0 };

G_DEFINE_TYPE_EXTENDED
    (GwySIUnit, gwy_si_unit, G_TYPE_OBJECT, 0,
     GWY_IMPLEMENT_SERIALIZABLE(gwy_si_unit_serializable_init))

static void
gwy_si_unit_serializable_init(GwySerializableIface *iface)
{
    iface->serialize = gwy_si_unit_serialize;
    iface->deserialize = gwy_si_unit_deserialize;
    iface->get_size = gwy_si_unit_get_size;
    iface->duplicate = gwy_si_unit_duplicate_real;
    iface->clone = gwy_si_unit_clone_real;
}

static void
gwy_si_unit_class_init(GwySIUnitClass *klass)
{
    GObjectClass *gobject_class = G_OBJECT_CLASS(klass);
コード例 #3
0
ファイル: gwystringlist.c プロジェクト: svn2github/gwyddion
static void      gwy_string_list_serializable_init(GwySerializableIface *iface);
static GByteArray* gwy_string_list_serialize      (GObject *obj,
                                                   GByteArray *buffer);
static gsize       gwy_string_list_get_size       (GObject *obj);
static GObject*    gwy_string_list_deserialize    (const guchar *buffer,
                                                   gsize size,
                                                   gsize *position);
static GObject*    gwy_string_list_duplicate_real (GObject *object);
static void        gwy_string_list_clone_real     (GObject *source,
                                                   GObject *copy);

static guint string_list_signals[LAST_SIGNAL] = { 0 };

G_DEFINE_TYPE_EXTENDED
    (GwyStringList, gwy_string_list, G_TYPE_OBJECT, 0,
     GWY_IMPLEMENT_SERIALIZABLE(gwy_string_list_serializable_init))

static void
gwy_string_list_serializable_init(GwySerializableIface *iface)
{
    iface->serialize = gwy_string_list_serialize;
    iface->deserialize = gwy_string_list_deserialize;
    iface->get_size = gwy_string_list_get_size;
    iface->duplicate = gwy_string_list_duplicate_real;
    iface->clone = gwy_string_list_clone_real;
}

static void
gwy_string_list_class_init(GwyStringListClass *klass)
{
    GObjectClass *gobject_class = G_OBJECT_CLASS(klass);
コード例 #4
0
ファイル: surface.c プロジェクト: cbuehler/gwyddion
static GObject*    gwy_surface_deserialize      (const guchar *buffer,
                                                 gsize size,
                                                 gsize *position);
static GObject*    gwy_surface_duplicate_real   (GObject *serializable);
static void        gwy_surface_clone_real       (GObject *destination,
                                                 GObject *source);
static void        copy_info                    (GwySurface *dest,
                                                 const GwySurface *src);
static void        ensure_ranges                (GwySurface *surface);
static void        ensure_checksum              (GwySurface *surface);

static guint signals[N_SIGNALS];

G_DEFINE_TYPE_EXTENDED
    (GwySurface, gwy_surface, G_TYPE_OBJECT, 0,
     GWY_IMPLEMENT_SERIALIZABLE(gwy_surface_serializable_init));

static void
gwy_surface_serializable_init(GwySerializableIface *iface)
{
    iface->serialize = gwy_surface_serialize;
    iface->deserialize = gwy_surface_deserialize;
    iface->get_size = gwy_surface_get_size;
    iface->duplicate = gwy_surface_duplicate_real;
    iface->clone = gwy_surface_clone_real;
}

static void
gwy_surface_class_init(GwySurfaceClass *klass)
{
    GObjectClass *gobject_class = G_OBJECT_CLASS(klass);
コード例 #5
0
ファイル: gwy3dsetup.c プロジェクト: svn2github/gwyddion
                                                  guint prop_id,
                                                  GValue *value,
                                                  GParamSpec *pspec);
static GByteArray* gwy_3d_setup_serialize        (GObject *serializable,
                                                  GByteArray *buffer);
static GObject*    gwy_3d_setup_deserialize      (const guchar *buffer,
                                                  gsize size,
                                                  gsize *position);
static void        gwy_3d_setup_clone            (GObject *source,
                                                  GObject *copy);
static GObject*    gwy_3d_setup_duplicate_real   (GObject *object);
static gsize       gwy_3d_setup_get_size         (GObject *object);

G_DEFINE_TYPE_EXTENDED
    (Gwy3DSetup, gwy_3d_setup, G_TYPE_OBJECT, 0,
     GWY_IMPLEMENT_SERIALIZABLE(gwy_3d_setup_serializable_init))

static void
gwy_3d_setup_serializable_init(GwySerializableIface *iface)
{
    iface->serialize = gwy_3d_setup_serialize;
    iface->deserialize = gwy_3d_setup_deserialize;
    iface->clone = gwy_3d_setup_clone;
    iface->get_size = gwy_3d_setup_get_size;
    iface->duplicate = gwy_3d_setup_duplicate_real;
}

static void
gwy_3d_setup_class_init(Gwy3DSetupClass *klass)
{
    GObjectClass *gobject_class = G_OBJECT_CLASS(klass);
コード例 #6
0
ファイル: spectra.c プロジェクト: DavidMercier/gwyddion
static void        gwy_spectra_clone_real       (GObject *source,
                                                 GObject *copy);
static void        gwy_spectra_set_property     (GObject *object,
                                                 guint prop_id,
                                                 const GValue *value,
                                                 GParamSpec *pspec);
static void        gwy_spectra_get_property     (GObject *object,
                                                 guint prop_id,
                                                 GValue *value,
                                                 GParamSpec *pspec);

static guint spectra_signals[LAST_SIGNAL] = { 0 };

G_DEFINE_TYPE_EXTENDED
    (GwySpectra, gwy_spectra, G_TYPE_OBJECT, 0,
     GWY_IMPLEMENT_SERIALIZABLE(gwy_spectra_serializable_init))

static void
gwy_spectra_serializable_init(GwySerializableIface *iface)
{
    gwy_debug("");
    iface->serialize = gwy_spectra_serialize;
    iface->deserialize = gwy_spectra_deserialize;
    iface->get_size = gwy_spectra_get_size;
    iface->duplicate = gwy_spectra_duplicate_real;
    iface->clone = gwy_spectra_clone_real;
}

static void
gwy_spectra_class_init(GwySpectraClass *klass)
{