VipsObject

VipsObject

Synopsis

enum                VipsArgumentFlags;
#define             VIPS_ARGUMENT_REQUIRED_INPUT
#define             VIPS_ARGUMENT_OPTIONAL_INPUT
#define             VIPS_ARGUMENT_REQUIRED_OUTPUT
#define             VIPS_ARGUMENT_OPTIONAL_OUTPUT
                    VipsArgument;
                    VipsArgumentInstance;
typedef             VipsArgumentTable;
VipsArgumentInstance * vips__argument_get_instance      (VipsArgumentClass *,
                                                         VipsObject *);
VipsArgument *      vips__argument_table_lookup         (VipsArgumentTable *,
                                                         GParamSpec *);
void *              (*VipsArgumentMapFn)                (VipsObject *,
                                                         GParamSpec *,
                                                         VipsArgumentClass *,
                                                         VipsArgumentInstance *,
                                                         void *a,
                                                         void *b);
void *              vips_argument_map                   (VipsObject *object,
                                                         VipsArgumentMapFn fn,
                                                         void *a,
                                                         void *b);
                    VipsObject;
void                vips_object_set_property            (GObject *gobject,
                                                         guint property_id,
                                                         const GValue *value,
                                                         GParamSpec *pspec);
void                vips_object_get_property            (GObject *gobject,
                                                         guint property_id,
                                                         GValue *value,
                                                         GParamSpec *pspec);
int                 vips_object_build                   (VipsObject *object);
void                vips_object_print_class             (VipsObjectClass *klass);
void                vips_object_print                   (VipsObject *object);
void                vips_object_class_install_argument  (VipsObjectClass *,
                                                         GParamSpec *pspec,
                                                         VipsArgumentFlags flags,
                                                         guint offset);
void *              (*VipsObjectSetArguments)           (VipsObject *,
                                                         void *,
                                                         void *);
VipsObject *        vips_object_new                     (GType type,
                                                         VipsObjectSetArguments set,
                                                         void *a,
                                                         void *b);
VipsObject *        vips_object_new_from_string         (const char *base,
                                                         const char *str);
void                vips_object_to_string               (VipsObject *object,
                                                         VipsBuf *buf);

Object Hierarchy

  GObject
   +----VipsObject
         +----VipsFormat
         +----VipsInterpolate

Properties

  "description"              gchar*                : Read / Write
  "nickname"                 gchar*                : Read / Write

Description

Details

enum VipsArgumentFlags

typedef enum _VipsArgumentFlags {
	VIPS_ARGUMENT_NONE = 0,

	/* Must be set in the constructor.
	 */
	VIPS_ARGUMENT_REQUIRED = 1,

	/* Can only be set in the constructor.
	 */
	VIPS_ARGUMENT_CONSTRUCT = 2,

	/* Can only be set once.
	 */
	VIPS_ARGUMENT_SET_ONCE = 4,

	/* Have input & output flags. Both set is an error; neither set is OK.
	 */

	/* Is an input argument (one we depend on) ... if it's a gobject, we 
	 * should ref it. In our _dispose(), we should unref it.
	 */
	VIPS_ARGUMENT_INPUT = 8,

	/* Is an output argument (one that depends on us) ... if it's a
	 * gobject, we should ref ourselves. We watch "destroy" on the
	 * argument: if it goes, we unref ourselves. If we dispose, we
	 * disconnect the signal.
	 */
	VIPS_ARGUMENT_OUTPUT = 16
} VipsArgumentFlags;

VIPS_ARGUMENT_REQUIRED_INPUT

#define             VIPS_ARGUMENT_REQUIRED_INPUT

VIPS_ARGUMENT_OPTIONAL_INPUT

#define             VIPS_ARGUMENT_OPTIONAL_INPUT

VIPS_ARGUMENT_REQUIRED_OUTPUT

#define             VIPS_ARGUMENT_REQUIRED_OUTPUT

VIPS_ARGUMENT_OPTIONAL_OUTPUT

#define             VIPS_ARGUMENT_OPTIONAL_OUTPUT

VipsArgument

typedef struct {
	GParamSpec *pspec; /* pspec for this argument */

	/* More stuff, see below */
} VipsArgument;

VipsArgumentInstance

typedef struct {
	VipsArgument parent;

	/* The object we are attached to.
	 */
	VipsObject *object;

	/* Has been set.
	 */
	gboolean assigned;

	/* If this is an output argument, keep the id of our "destroy" handler
	 * here.
	 */
	gulong destroy_id;	
} VipsArgumentInstance;

VipsArgumentTable

typedef GHashTable VipsArgumentTable;

vips__argument_get_instance ()

VipsArgumentInstance * vips__argument_get_instance      (VipsArgumentClass *,
                                                         VipsObject *);

vips__argument_table_lookup ()

VipsArgument *      vips__argument_table_lookup         (VipsArgumentTable *,
                                                         GParamSpec *);

VipsArgumentMapFn ()

void *              (*VipsArgumentMapFn)                (VipsObject *,
                                                         GParamSpec *,
                                                         VipsArgumentClass *,
                                                         VipsArgumentInstance *,
                                                         void *a,
                                                         void *b);

vips_argument_map ()

void *              vips_argument_map                   (VipsObject *object,
                                                         VipsArgumentMapFn fn,
                                                         void *a,
                                                         void *b);

VipsObject

typedef struct _VipsObject VipsObject;

vips_object_set_property ()

void                vips_object_set_property            (GObject *gobject,
                                                         guint property_id,
                                                         const GValue *value,
                                                         GParamSpec *pspec);

vips_object_get_property ()

void                vips_object_get_property            (GObject *gobject,
                                                         guint property_id,
                                                         GValue *value,
                                                         GParamSpec *pspec);

vips_object_build ()

int                 vips_object_build                   (VipsObject *object);

vips_object_print_class ()

void                vips_object_print_class             (VipsObjectClass *klass);

vips_object_print ()

void                vips_object_print                   (VipsObject *object);

vips_object_class_install_argument ()

void                vips_object_class_install_argument  (VipsObjectClass *,
                                                         GParamSpec *pspec,
                                                         VipsArgumentFlags flags,
                                                         guint offset);

VipsObjectSetArguments ()

void *              (*VipsObjectSetArguments)           (VipsObject *,
                                                         void *,
                                                         void *);

vips_object_new ()

VipsObject *        vips_object_new                     (GType type,
                                                         VipsObjectSetArguments set,
                                                         void *a,
                                                         void *b);

vips_object_new_from_string ()

VipsObject *        vips_object_new_from_string         (const char *base,
                                                         const char *str);

vips_object_to_string ()

void                vips_object_to_string               (VipsObject *object,
                                                         VipsBuf *buf);

Property Details

The "description" property

  "description"              gchar*                : Read / Write

Class description.

Default value: ""


The "nickname" property

  "nickname"                 gchar*                : Read / Write

Class nickname.

Default value: ""