Result:
found more than 1151 distributions - search limited to the first 2001 files matching your query ( run in 1.980 )


Gimp

 view release on metacpan or  search on metacpan

lib/Gimp/Lib.xs  view on Meta::CPAN

INIT:
  gimp_enums_init ();
  gint n_type_names;
  const gchar **etn;
  int i;
PPCODE:
  etn = gimp_enums_get_type_names (&n_type_names);
  if (!etn) XSRETURN_EMPTY;
  EXTEND(SP, n_type_names);
  for (i = 0; i < n_type_names; i++) {
    PUSHs(sv_2mortal(newSVpv(etn[i], 0)));

lib/Gimp/Lib.xs  view on Meta::CPAN

  const char *name
INIT:
  GType enum_type;
  GEnumClass *enum_class;
  GEnumValue *value;
PPCODE:
  if (!(enum_type = g_type_from_name (name)))
    croak (__("gimp_enums_list_type(%s) invalid name"), name);
  if (!(enum_class = g_type_class_peek (enum_type)))
    croak (__("gimp_enums_list_type(%s) invalid class"), name);
  for (value = enum_class->values; value->value_name; value++) {

lib/Gimp/Lib.xs  view on Meta::CPAN


# get gimp procedure info
void
gimp_procedural_db_proc_info(proc_name)
char * proc_name
PPCODE:
{
  char *proc_blurb;
  char *proc_help;
  char *proc_author;
  char *proc_copyright;

lib/Gimp/Lib.xs  view on Meta::CPAN

  const char *proc_type
INIT:
  gint num_matches;
  gchar **procedure_names;
  int i;
PPCODE:
  if (!gimp_procedural_db_query (
    name, blurb, help, author, copyright, date, proc_type, &num_matches,
    &procedure_names
  )) croak (__("gimp_procedural_db_proc_query failed"));
  if (!num_matches) XSRETURN_EMPTY;

lib/Gimp/Lib.xs  view on Meta::CPAN

  }

void
gimp_call_procedure (proc_name, ...)
  utf8_str	proc_name
PPCODE:
{
  char croak_str[MAX_STRING] = "";
  char *proc_blurb;
  char *proc_help;
  char *proc_author;

lib/Gimp/Lib.xs  view on Meta::CPAN

	}

void
gimp_get_data(id)
	SV *	id;
	PPCODE:
	{
		SV *data;
		STRLEN dlen;

		dlen = gimp_get_data_size (SvPV_nolen (id));

lib/Gimp/Lib.xs  view on Meta::CPAN

#

void
gimp_patterns_get_pattern_data(name)
	SV *	name
	PPCODE:
	{
		GimpParam *return_vals;
		int nreturn_vals;

		return_vals = gimp_run_procedure ("gimp_patterns_get_pattern_data",

 view all matches for this distribution


Git-Raw

 view release on metacpan or  search on metacpan

Raw.xs  view on Meta::CPAN

	SV *class

	PREINIT:
		int ctx = GIMME_V;

	PPCODE:
		if (ctx != G_VOID) {
			if (ctx == G_ARRAY) {
				int features = git_libgit2_features();

				mXPUSHs(newSVpv("threads", 0));

 view all matches for this distribution


Glib-Object-Introspection

 view release on metacpan or  search on metacpan

GObjectIntrospection.xs  view on Meta::CPAN

	AV *global_functions;
	HV *namespaced_functions;
	HV *fields;
	AV *interfaces;
	AV *objects_with_vfuncs;
    PPCODE:
	repository = g_irepository_get_default ();

	constants = newAV ();
	global_functions = newAV ();
	namespaced_functions = newHV ();

GObjectIntrospection.xs  view on Meta::CPAN

	GIRepository *repository;
	GIObjectInfo *info;
	GType gtype, object_gtype;
	/* FIXME: we should export gperl_type_reg_quark from Glib */
	GQuark reg_quark = g_quark_from_static_string ("__gperl_type_reg");
    PPCODE:
	repository = g_irepository_get_default ();
	info = g_irepository_find_by_name (repository, basename, object_name);
	g_assert (info && GI_IS_OBJECT_INFO (info));
	gtype = gperl_object_type_from_package (target_package);
	object_gtype = get_gtype (info);

GObjectIntrospection.xs  view on Meta::CPAN

	GIRepository *repository;
	GType object_gtype, target_gtype;
	gpointer object_klass, target_klass;
	GIObjectInfo *object_info;
	gint n_vfuncs, i;
    PPCODE:
	repository = g_irepository_get_default ();
	target_gtype = gperl_object_type_from_package (target_package);
	object_gtype = gperl_object_type_from_package (object_package);
	g_assert (target_gtype && object_gtype);
	target_klass = g_type_class_peek (target_gtype);

GObjectIntrospection.xs  view on Meta::CPAN

	GType gtype;
	gpointer klass;
	GIVFuncInfo *vfunc_info;
	gint field_offset;
	gpointer func_pointer;
    PPCODE:
	dwarn ("%s::%s, target = %s\n",
	       vfunc_package, vfunc_name, target_package);
	gtype = gperl_object_type_from_package (target_package);
	klass = g_type_class_peek (gtype);
	g_assert (klass);

GObjectIntrospection.xs  view on Meta::CPAN

	UV internal_stack_offset = 4;
	GIRepository *repository;
	GIFunctionInfo *info;
	gpointer func_pointer = NULL;
	const gchar *symbol = NULL;
    PPCODE:
	repository = g_irepository_get_default ();
	info = get_function_info (repository, basename, namespace, function);
	symbol = g_function_info_get_symbol (info);
	if (!g_typelib_symbol (g_base_info_get_typelib((GIBaseInfo *) info),
			       symbol, &func_pointer))

GObjectIntrospection.xs  view on Meta::CPAN

void
_invoke (SV *code, ...)
    PREINIT:
	GPerlI11nCCallbackInfo *wrapper;
	UV internal_stack_offset = 1;
    PPCODE:
	wrapper = INT2PTR (GPerlI11nCCallbackInfo*, SvIV (SvRV (code)));
	if (!wrapper || !wrapper->func)
		ccroak ("invalid reference encountered");
	invoke_c_code (wrapper->interface, wrapper->func,
	               sp, ax, mark, items,

 view all matches for this distribution


Glib

 view release on metacpan or  search on metacpan

lib/Glib/GenPod.pm  view on Meta::CPAN

 at any point in this pod -- they are stripped after.
 In fact, any pod is valid in here, until the =cut.

 =cut
 void foo (...)
     PPCODE:
        /* crazy code follows */

=item =for arg name (type) description

=item =for arg name description

lib/Glib/GenPod.pm  view on Meta::CPAN

	           ? (@outlist > 1
		      ? "(".join (", ", @outlist).")"
		      : $outlist[0]
		     )." = "
		   : (defined $xsub->{codetype} and
		      $xsub->{codetype} eq 'PPCODE'
		      ? 'list = '
		      : ''
		     );
	
	"$retstr$call ".($argstr ? "($argstr)" : "");

 view all matches for this distribution


Gnome2-Canvas

 view release on metacpan or  search on metacpan

xs/GnomeCanvas.xs  view on Meta::CPAN

	GnomeCanvas *canvas
	const char *spec
    PREINIT:
	int result;
	GdkColor color;
    PPCODE:
	result = gnome_canvas_get_color (canvas, spec, &color);
	EXTEND (sp, 2);
	PUSHs (sv_2mortal (newSViv (result)));
	PUSHs (sv_2mortal (newSVGdkColor (&color)));

xs/GnomeCanvas.xs  view on Meta::CPAN

Fetch as a list the version of libgnomecanvas for which Gnome2::Canvas was
built.
=cut
void
GET_VERSION_INFO (class)
    PPCODE:
	EXTEND (SP, 3);
	PUSHs (sv_2mortal (newSViv (GNOME_CANVAS_MAJOR_VERSION)));
	PUSHs (sv_2mortal (newSViv (GNOME_CANVAS_MINOR_VERSION)));
	PUSHs (sv_2mortal (newSViv (GNOME_CANVAS_MICRO_VERSION)));
	PERL_UNUSED_VAR (ax);

 view all matches for this distribution


Gnome2-Dia

 view release on metacpan or  search on metacpan

xs/Dia.xs  view on Meta::CPAN


# --------------------------------------------------------------------------- #

void
GET_VERSION_INFO (class)
    PPCODE:
	EXTEND (SP, 3);
	PUSHs (sv_2mortal (newSViv (DIACANVAS_MAJOR_VERSION)));
	PUSHs (sv_2mortal (newSViv (DIACANVAS_MINOR_VERSION)));
	PUSHs (sv_2mortal (newSViv (DIACANVAS_MICRO_VERSION)));
	PERL_UNUSED_VAR (ax);

 view all matches for this distribution


Gnome2-GConf

 view release on metacpan or  search on metacpan

ChangeLog  view on Meta::CPAN

	can supply doctypes and give decent names to the unregistered
	structures in the bindings.  this requires an update to
	ExtUtils::Depends 0.2 and bleeding edge Glib.

	* xs/GConfClient.xs: use the new typemaps instead of hand-coded
	PPCODE sections; this eliminates the need for several =for signature
	directives in pod.

2004/02/20 14:15 (+0100) ebassi

	* GConf,pm, README: version 0.91 - final beta cycle before API freeze

 view all matches for this distribution


Gnome2-PanelApplet

 view release on metacpan or  search on metacpan

xs/PanelApplet.xs  view on Meta::CPAN

panel_applet_get_background (PanelApplet *applet)
    PREINIT:
	PanelAppletBackgroundType type;
	GdkColor color;
	GdkPixmap *pixmap = NULL;
    PPCODE:
	type = panel_applet_get_background (applet, &color, &pixmap);
	EXTEND (sp, 3);
	PUSHs (sv_2mortal (newSVPanelAppletBackgroundType (type)));
	switch (type) {
	    case PANEL_NO_BACKGROUND:

xs/PanelApplet.xs  view on Meta::CPAN


#endif

void
GET_VERSION_INFO (class)
    PPCODE:
	EXTEND (SP, 3);
	PUSHs (sv_2mortal (newSViv (PANEL_APPLET_MAJOR_VERSION)));
	PUSHs (sv_2mortal (newSViv (PANEL_APPLET_MINOR_VERSION)));
	PUSHs (sv_2mortal (newSViv (PANEL_APPLET_MICRO_VERSION)));
	PERL_UNUSED_VAR (ax);

 view all matches for this distribution


Gnome2-Print

 view release on metacpan or  search on metacpan

ChangeLog  view on Meta::CPAN


2003/11/29 18:45 (+0100) ebassi

	* xs/GnomePrintJob.xs, xs/GnomeFont.xs, xs/GnomeFontFace.xs,
	  xs/GnomePrintConfig.xs, xs/GnomePrintDialog.xs: better apidoc for
	  PPCODE in methods.

2003/11/29 18:15 (+0100) ebassi

	* t/*: updated tests for constants modules change, and for unused
	  variables.

ChangeLog  view on Meta::CPAN

	  get_version class method.

2003/11/28 19:00 (+0100) ebassi

	* xs/GnomeFont.xs, xs/GnomePrintJob.xs, xs/GnomePrintDialog.xs: added
	  apidoc for PPCODE sections.

2003/11/28 18:34 (+0100) ebassi

	* Makefile.PL, pm/Config.pm, pm/Font.pm, t/05.GnomeFont.t: moved
	  constants to another namespace to avoid collisions with the

 view all matches for this distribution


Gnome2-Rsvg

 view release on metacpan or  search on metacpan

xs/Rsvg.xs  view on Meta::CPAN

#include "register.xsh"
#include "boot.xsh"

void
GET_VERSION_INFO (class)
    PPCODE:
	EXTEND (SP, 3);
	PUSHs (sv_2mortal (newSViv (LIBRSVG_MAJOR_VERSION)));
	PUSHs (sv_2mortal (newSViv (LIBRSVG_MINOR_VERSION)));
	PUSHs (sv_2mortal (newSViv (LIBRSVG_MICRO_VERSION)));
	PERL_UNUSED_VAR (ax);

 view all matches for this distribution


Gnome2-VFS

 view release on metacpan or  search on metacpan

ChangeLog.pre-git  view on Meta::CPAN

	* xs/GnomeVFS.xs: hush unused var warning in get_version_info.

	* xs/GnomeVFSAsync.xs: looks like a couple of
	s/VFS2PERL_GNOME_TYPE/GNOME_VFS_TYPE/ slipped through the cracks.

	* xs/GnomeVFSDirectory.xs, xs/GnomeVFSOps.xs: if using PPCODE, the
	return type should be void.  this hushes some 'unused var RETVAL'
	warnings.

	* xs/GnomeVFSUtils.xs: disambiguating braces hush compiler warnings.
	

ChangeLog.pre-git  view on Meta::CPAN

	that it gets overwritten by the one generated by Gtk2::CodeGen.

	* xs/GnomeVFSAsync.xs
	* xs/GnomeVFSDirectory.xs
	* xs/GnomeVFSOps.xs
	* xs/GnomeVFSXfer.xs: Don't declare variables in CODE or PPCODE
	sections, use PREINIT instead.

2003/11/23 21:52 (+0100) kaffeetisch

	* Makefile.PL: Use custom prefixes for all GEnums and GFlags so

 view all matches for this distribution


Gnome2-Vte

 view release on metacpan or  search on metacpan

xs/Vte.xs  view on Meta::CPAN

#include "register.xsh"
#include "boot.xsh"

void
GET_VERSION_INFO (class)
    PPCODE:
	EXTEND (SP, 3);
	PUSHs (sv_2mortal (newSViv (VTE_MAJOR_VERSION)));
	PUSHs (sv_2mortal (newSViv (VTE_MINOR_VERSION)));
	PUSHs (sv_2mortal (newSViv (VTE_MICRO_VERSION)));
	PERL_UNUSED_VAR (ax);

 view all matches for this distribution


Gnome2-Wnck

 view release on metacpan or  search on metacpan

xs/Wnck.xs  view on Meta::CPAN

#include "register.xsh"
#include "boot.xsh"

void
GET_VERSION_INFO (class)
    PPCODE:
	EXTEND (SP, 3);
	PUSHs (sv_2mortal (newSViv (WNCK_MAJOR_VERSION)));
	PUSHs (sv_2mortal (newSViv (WNCK_MINOR_VERSION)));
	PUSHs (sv_2mortal (newSViv (WNCK_MICRO_VERSION)));
	PERL_UNUSED_VAR (ax);

 view all matches for this distribution


Gnome2

 view release on metacpan or  search on metacpan

ChangeLog.pre-git  view on Meta::CPAN

	don't let RETVAL be used uninitialized in alias switches.

	* xs/Gnome2.xs: mark ax unused in functions which don't touch the
	input stack, to hush compiler warnings

	* xs/GnomeScore.xs: return type on PPCODE xsubs must be void.

2003/12/29 16:32 (-0500) rwmcfa1

	* perl-Gnome2.spec.in: use the new DATE replacement in conjunction with
	VERSION to create the changlog on the fly, which is better.

 view all matches for this distribution


Goo-Canvas

 view release on metacpan or  search on metacpan

xs/goocanvas.xs  view on Meta::CPAN

   PREINIT:
    gdouble left;
    gdouble top;
    gdouble right;
    gdouble bottom;
   PPCODE:
    goo_canvas_get_bounds(canvas, &left, &top, &right, &bottom);
    mXPUSHn(left);
    mXPUSHn(top);
    mXPUSHn(right);
    mXPUSHn(bottom);

 view all matches for this distribution


GooCanvas2-CairoTypes

 view release on metacpan or  search on metacpan

lib/GooCanvas2/CairoTypes.xs  view on Meta::CPAN

	gperl_register_boxed_synonym(CAIRO_GOBJECT_TYPE_PATTERN, GOO_TYPE_CAIRO_PATTERN);

# I don't know how to do this transformation more implicitly, without changing the code to call weird functions
SV*
cairoize_pattern(SV* input)
	PPCODE:
		SV* result = gperl_new_boxed(gperl_get_boxed_check(input, GOO_TYPE_CAIRO_PATTERN), CAIRO_GOBJECT_TYPE_PATTERN, 0);
		PUSHs(sv_2mortal(result));

 view all matches for this distribution


Google-ProtocolBuffers-Dynamic

 view release on metacpan or  search on metacpan

xsp/mapper.xsp  view on Meta::CPAN

void
get_scalar(HV *self)
  INIT:
    dXSTARG;
    gpd::MapperField *field = (gpd::MapperField *) CvXSUBANY(cv).any_ptr;
  PPCODE:
    PUSHs(field->get_scalar(self, TARG));

void
get_extension_scalar(HV *self, SV *extension)
  INIT:
    dXSTARG;
    gpd::MapperField *field = gpd::MapperField::find_scalar_extension(aTHX_ cv, extension);
  PPCODE:
    PUSHs(field->get_scalar(self, TARG));

void
set_scalar(HV *self, SV *value)
  INIT:

xsp/mapper.xsp  view on Meta::CPAN

void
get_or_set_scalar(HV *self, SV *value = NULL)
  INIT:
    dXSTARG;
    gpd::MapperField *field = (gpd::MapperField *) CvXSUBANY(cv).any_ptr;
  PPCODE:
    if (!value)
        PUSHs(field->get_scalar(self, TARG));
    else
        field->set_scalar(self, value);

void
get_or_set_extension_scalar(HV *self, SV *extension, SV *value = NULL)
  INIT:
    dXSTARG;
    gpd::MapperField *field = gpd::MapperField::find_scalar_extension(aTHX_ cv, extension);
  PPCODE:
    if (!value)
        PUSHs(field->get_scalar(self, TARG));
    else
        field->set_scalar(self, value);

void
get_list_item(HV *self, IV index)
  INIT:
    dXSTARG;
    gpd::MapperField *field = (gpd::MapperField *) CvXSUBANY(cv).any_ptr;
  PPCODE:
    PUSHs(field->get_item(self, index, TARG));

void
get_extension_item(HV *self, SV *extension, IV index)
  INIT:
    dXSTARG;
    gpd::MapperField *field = gpd::MapperField::find_repeated_extension(aTHX_ cv, extension);
  PPCODE:
    PUSHs(field->get_item(self, index, TARG));

void
set_list_item(HV *self, IV index, SV *value)
  INIT:

xsp/mapper.xsp  view on Meta::CPAN

void
get_or_set_list_item(HV *self, IV index, SV *value = NULL)
  INIT:
    dXSTARG;
    gpd::MapperField *field = (gpd::MapperField *) CvXSUBANY(cv).any_ptr;
  PPCODE:
    if (!value)
        PUSHs(field->get_item(self, index, TARG));
    else
        field->set_item(self, index, value);

void
get_or_set_extension_item(HV *self, SV *extension, IV index, SV *value = NULL)
  INIT:
    dXSTARG;
    gpd::MapperField *field = gpd::MapperField::find_scalar_extension(aTHX_ cv, extension);
  PPCODE:
    if (!value)
        PUSHs(field->get_item(self, index, TARG));
    else
        field->set_item(self, index, value);

xsp/mapper.xsp  view on Meta::CPAN


void
get_list(HV *self)
  INIT:
    gpd::MapperField *field = (gpd::MapperField *) CvXSUBANY(cv).any_ptr;
  PPCODE:
    PUSHs(field->get_list(self));

void
get_extension_list(HV *self, SV *extension)
  INIT:
    gpd::MapperField *field = gpd::MapperField::find_repeated_extension(aTHX_ cv, extension);
  PPCODE:
    PUSHs(field->get_list(self));

void
set_list(HV *self, SV *ref)
  INIT:

xsp/mapper.xsp  view on Meta::CPAN


void
get_or_set_list(HV *self, SV *ref = NULL)
  INIT:
    gpd::MapperField *field = (gpd::MapperField *) CvXSUBANY(cv).any_ptr;
  PPCODE:
    if (!ref)
        PUSHs(field->get_list(self));
    else
        field->set_list(self, ref);

void
get_or_set_extension_list(HV *self, SV *extension, SV *ref = NULL)
  INIT:
    gpd::MapperField *field = gpd::MapperField::find_scalar_extension(aTHX_ cv, extension);
  PPCODE:
    if (!ref)
        PUSHs(field->get_list(self));
    else
        field->set_list(self, ref);

void
get_map_item(HV *self, SV *key)
  INIT:
    dXSTARG;
    gpd::MapperField *field = (gpd::MapperField *) CvXSUBANY(cv).any_ptr;
  PPCODE:
    PUSHs(field->get_item(self, key, TARG));

void
set_map_item(HV *self, SV *key, SV *value)
  INIT:

xsp/mapper.xsp  view on Meta::CPAN

void
get_or_set_map_item(HV *self, SV *key, SV *value = NULL)
  INIT:
    dXSTARG;
    gpd::MapperField *field = (gpd::MapperField *) CvXSUBANY(cv).any_ptr;
  PPCODE:
    if (!value)
        PUSHs(field->get_item(self, key, TARG));
    else
        field->set_item(self, key, value);

void
get_map(HV *self)
  INIT:
    gpd::MapperField *field = (gpd::MapperField *) CvXSUBANY(cv).any_ptr;
  PPCODE:
    PUSHs(field->get_map(self));

void
set_map(HV *self, SV *ref)
  INIT:

xsp/mapper.xsp  view on Meta::CPAN


void
get_or_set_map(HV *self, SV *ref = NULL)
  INIT:
    gpd::MapperField *field = (gpd::MapperField *) CvXSUBANY(cv).any_ptr;
  PPCODE:
    if (!ref)
        PUSHs(field->get_map(self));
    else
        field->set_map(self, ref);

 view all matches for this distribution


Graph-Layout-Aesthetic

 view release on metacpan or  search on metacpan

Aesthetic.xs  view on Meta::CPAN


void
neighbors(aglo_graph topology, aglo_vertex vertex)
  PREINIT:
    aglo_edge_record here, next;
  PPCODE:
    if (vertex >= topology->vertices)
        croak("Vertex number %"UVuf" is invalid, there are only %"UVuf" in the topology",
              (UV) vertex, (UV) topology->vertices);
    here = topology->edge_table[vertex];
    while (here) {

Aesthetic.xs  view on Meta::CPAN


void
forward_neighbors(aglo_graph topology, aglo_vertex vertex)
  PREINIT:
    aglo_edge_record here, next;
  PPCODE:
    if (vertex >= topology->vertices)
        croak("Vertex number %"UVuf" is invalid, there are only %"UVuf" in the topology",
        (UV) vertex, (UV) topology->vertices);
    here = topology->edge_table[vertex];
    while (here) {

Aesthetic.xs  view on Meta::CPAN


void
edges(aglo_graph topology)
  PREINIT:
    aglo_vertex i;
  PPCODE:
    for (i=0; i<topology->vertices; i++) {
        aglo_edge_record here, next;
        for (here = topology->edge_table[i]; here; here = next) {
            next = here->next;
            if (here->forward) {

Aesthetic.xs  view on Meta::CPAN


void
add_edge(aglo_graph topology, aglo_vertex u, aglo_vertex v, aglo_boolean forward=1)
  PREINIT:
    aglo_edge_record f_edge, b_edge;
  PPCODE:
    if (topology->done) croak("Cannot add nodes to a finished topology");
    if (u >= topology->vertices)
        croak("Vertex number %"UVuf" is invalid, there are only %"UVuf" in the topology",
              (UV) u, (UV) topology->vertices);
    if (v >= topology->vertices)

Aesthetic.xs  view on Meta::CPAN

    b_edge->next = topology->edge_table[v];
    topology->edge_table[v] = b_edge;

void
finish(aglo_graph topology)
  PPCODE:
    if (topology->done) croak("Topology is already finished");
    topology->done = true;

aglo_boolean
finished(aglo_graph topology)

Aesthetic.xs  view on Meta::CPAN


void
levels(aglo_graph topology)
  PREINIT:
    aglo_vertex i;
  PPCODE:
    at_setup_node_level(topology);
    EXTEND(SP, topology->vertices);
    for (i=0; i<topology->vertices; i++)
        PUSHs(sv_2mortal(newSVnv(topology->at_level[i])));

void
user_data(aglo_graph topology, SV *new_user_data=0)
  PPCODE:
    if (GIMME_V != G_VOID)
        XPUSHs(topology->user_data ? topology->user_data : &PL_sv_undef);
    if (new_user_data) {
        if (topology->user_data) sv_2mortal(topology->user_data);
        topology->user_data = newSVsv(new_user_data);
    }

void
_private_data(aglo_graph topology, SV *new_private_data=0)
  PPCODE:
    if (GIMME_V != G_VOID)
        XPUSHs(topology->private_data ? topology->private_data : &PL_sv_undef);
    if (new_private_data) {
        if (topology->private_data) sv_2mortal(topology->private_data);
        topology->private_data = newSVsv(new_private_data);

Aesthetic.xs  view on Meta::CPAN


void
DESTROY(aglo_graph topology)
  PREINIT:
    aglo_vertex i;
  PPCODE:
    if (topology->user_data)	sv_2mortal(topology->user_data);
    if (topology->private_data) sv_2mortal(topology->private_data);
    if (topology->at_level) Safefree(topology->at_level);
    if (topology->level_sorted_vertex) Safefree(topology->level_sorted_vertex);
    if (topology->level2nodes) Safefree(topology->level2nodes);

Aesthetic.xs  view on Meta::CPAN


MODULE = Graph::Layout::Aesthetic		PACKAGE = Graph::Layout::Aesthetic::Force

void
user_data(aglo_force force, SV *new_user_data=0)
  PPCODE:
    if (GIMME_V != G_VOID)
        XPUSHs(force->user_data ? force->user_data : &PL_sv_undef);
    if (new_user_data) {
        if (force->user_data) sv_2mortal(force->user_data);
        force->user_data = newSVsv(new_user_data);
    }

void
_private_data(aglo_force force, SV *new_private_data=0)
  PPCODE:
    if (GIMME_V != G_VOID)
        XPUSHs(force->private_data ? force->private_data : &PL_sv_undef);
    if (new_private_data) {
        if (force->private_data) sv_2mortal(force->private_data);
        force->private_data = newSVsv(new_private_data);
    }

void
DESTROY(aglo_force force)
  PPCODE:
    if (force->private_data) sv_2mortal(force->private_data);
    if (force->user_data)    sv_2mortal(force->user_data);
    Safefree(force);

MODULE = Graph::Layout::Aesthetic		PACKAGE = Graph::Layout::Aesthetic

Aesthetic.xs  view on Meta::CPAN

  OUTPUT:
    RETVAL

void
paused(aglo_state state, aglo_boolean new_paused=0)
  PPCODE:
    if (GIMME_V != G_VOID) XPUSHs(state->paused ? &PL_sv_yes : &PL_sv_no);
    if (items > 1) state->paused = new_paused;

aglo_unsigned
nr_dimensions(aglo_state state)

Aesthetic.xs  view on Meta::CPAN

void
coordinates(aglo_state state, aglo_vertex vertex, ...)
  PREINIT:
    aglo_unsigned i, d;
    aglo_point v;
  PPCODE:
    if (vertex >= state->graph->vertices)
        croak("Vertex number %"UVuf" is invalid, there are only %"UVuf" in the topology",
              (UV) vertex, (UV) state->graph->vertices);
    d = state->dimensions;
    v = state->point[vertex];

Aesthetic.xs  view on Meta::CPAN

  PREINIT:
    aglo_unsigned j, d;
    aglo_vertex i, v;
    AV *coords;
    aglo_point p;
  PPCODE:
    d = state->dimensions;
    v = state->graph->vertices;

    /* First push the result */
    switch(GIMME_V) {

Aesthetic.xs  view on Meta::CPAN

    aglo_unsigned j, d;
    aglo_graph graph;
    aglo_point p;
    aglo_edge_record here;
    AV *rav, *av, *av_from, *av_to;
  PPCODE:
    d = state->dimensions;
    graph = state->graph;
    switch(GIMME_V) {
      case G_ARRAY:
        for (i=0; i<graph->vertices; i++) {

Aesthetic.xs  view on Meta::CPAN

void
zero(aglo_state state)
  PREINIT:
    aglo_unsigned i, d;
    aglo_vertex p, v;
  PPCODE:
    d = state->dimensions;
    v = state->graph->vertices;
    for (p=0; p<v; p++) {
        aglo_real *here = state->point[p];
        for (i=0; i<d; i++) here[i] = 0;
    }
    state->sequence++;

void
randomize(aglo_state state, aglo_real size = 1)
  PPCODE:
    aglo_randomize(aTHX_ state, size);

void
frame(aglo_state state)
  PREINIT:
    aglo_real *frame;
    aglo_unsigned i, d;
    AV *av;
  PPCODE:
    if (state->graph->vertices > 0) {
        d = state->dimensions;

        New(__LINE__, frame, 2*d, aglo_real);
        aglo_frame_coordinates(state, frame, &frame[d]);

Aesthetic.xs  view on Meta::CPAN

iso_frame(aglo_state state)
  PREINIT:
    aglo_real *frame;
    aglo_unsigned i, d;
    AV *av;
  PPCODE:
    if (state->graph->vertices > 0) {
        d = state->dimensions;

        New(__LINE__, frame, 2*d, aglo_real);
        aglo_iso_frame_coordinates(state, frame, &frame[d]);

Aesthetic.xs  view on Meta::CPAN

        Safefree(frame);
    }

void
normalize(aglo_state state)
  PPCODE:
    aglo_normalize_state(state);

void
jitter(aglo_state state, aglo_real distance=1e-5)
  PPCODE:
    jitter(aTHX_ state, distance);

void
_add_force(SV *state, SV *force, aglo_real weight=1)
  PREINIT:
    aglo_state st;
    aglo_force fo;
    use_force  use;
    void *private;
  PPCODE:
    /* This replaces force by what it references */
    fo = C_OBJECT(force, "Graph::Layout::Aesthetic::Force", "force");
    /* This replaces state by what it references */
    st = C_OBJECT(state, "Graph::Layout::Aesthetic", "state");

Aesthetic.xs  view on Meta::CPAN


void
forces(aglo_state state)
  PREINIT:
    use_force force;
  PPCODE:
    switch(GIMME_V) {
        AV *rav;
      case G_ARRAY:
        for (force = state->forces; force; force = force->next) {
            AV *av = newAV();

Aesthetic.xs  view on Meta::CPAN

    }


void
init_gloss(aglo_state state, aglo_real temperature, aglo_real end_temperature, aglo_signed iterations, aglo_real randomize_size=1)
  PPCODE:
    if (temperature <= 0)
        croak("Temperature %"NVff" should be > 0", (NV) temperature);
    if (end_temperature <= 0)
        croak("End_temperature %"NVff" should be > 0", (NV) end_temperature);
    if (temperature < end_temperature)

Aesthetic.xs  view on Meta::CPAN

void
_gloss(aglo_state state, aglo_real pause_time=1e50)
  PREINIT:
    time_t now;
    aglo_real lambda;
  PPCODE:
    if (state->iterations <= 0) croak("No more iterations left");
    lambda = pow(state->temperature / state->end_temperature, 1.0 / state->iterations);
    state->paused = 0;
    while (state->iterations > 0 && !state->paused) {
        aglo_step(aTHX_ state, state->temperature,

Aesthetic.xs  view on Meta::CPAN

    /* We lose the value anyways on exception in gradient,
       but restore is just a nicity, not part of the API */

void
step(aglo_state state, aglo_real temperature = state->temperature, aglo_real jitter_size = 1e-5)
  PPCODE:
    if (items < 3 && temperature < jitter_size) jitter_size = temperature;
    aglo_step(aTHX_ state, temperature, jitter_size);

void gradient(aglo_state state)
  PREINIT:
    aglo_unsigned i, d;
    aglo_vertex p, v;
    aglo_gradient gradient;
  PPCODE:
    calculate_aesth_forces(aTHX_ state);

    gradient = state->gradient;
    d = state->dimensions;
    v = state->graph->vertices;

Aesthetic.xs  view on Meta::CPAN

DESTROY(SV *state)
  PREINIT:
    use_force here;
    aglo_state st;
    aglo_boolean warned;
  PPCODE:
    /* This replaces state by what it references */
    st = C_OBJECT(state, "Graph::Layout::Aesthetic", "state");

    warned = 0;
    ENTER;

Aesthetic.xs  view on Meta::CPAN

clear_forces(aglo_state state)
  PREINIT:
    use_force here;
    aglo_aesth_cleanup_fx *cleanup;
    void *private;
  PPCODE:
    while (state->forces) {
        here = state->forces;
        /* Keep datastructure valid in case the cleanup call dies */
        state->forces = here->next;
        cleanup = here->force->aesth_cleanup;

 view all matches for this distribution


Graph-NewmanGirvan

 view release on metacpan or  search on metacpan

NewmanGirvan.xs  view on Meta::CPAN

NewmanGirvan::set_vertex_weight(const char* vertex, double weight)

void
NewmanGirvan::compute()
  PREINIT:
  PPCODE:
    std::map<std::string, int> result = THIS->run();
    for (std::map<std::string, int>::const_iterator i = result.begin(); i != result.end(); ++i) {
      mXPUSHs(newSVpvn(i->first.c_str(), i->first.size()));
      mXPUSHs(newSVnv(i->second));
    }

 view all matches for this distribution


Graphics-MNG

 view release on metacpan or  search on metacpan

MNG.xs  view on Meta::CPAN

   SV *cbfn
   PROTOTYPE: $$
   PREINIT:
      int c_rv = 0;
      int count;
   PPCODE:
      if ( SvROK(cbfn) ) cbfn=SvRV(cbfn);    // allow one level of deref
      if ( SvTYPE(cbfn) != SVt_PVCV )
      {
         my_warn( "test_callback_fn: wrong type for callback function" );
         XSRETURN_UNDEF;

MNG.xs  view on Meta::CPAN


void
mng_set_warn_category(offset)
   unsigned long offset
   PROTOTYPE: $
   PPCODE:
      warn_category = offset/2;  // need to half the value for use in PERL guts



#===============================================================================

MNG.xs  view on Meta::CPAN

      mng_int32     c_iExtra1    = 0;
      mng_int32     c_iExtra2    = 0;
      mng_pchar     c_zErrortext = NULL;
      mng_retcode   c_rv;
      SV*           errortext = &PL_sv_undef;
   PPCODE:
      c_rv = mng_getlasterror ( hHandle,                    
                                &c_iSeverity,
                                &c_iChunkname,
                                &c_iChunkseq,
                                &c_iExtra1,

MNG.xs  view on Meta::CPAN

   PREINIT:
      mng_retcode      c_rv;
      mng_uint16       c_iRed;
      mng_uint16       c_iGreen;
      mng_uint16       c_iBlue;
   PPCODE:
      c_rv = mng_get_bgcolor(hHandle,&c_iRed,&c_iGreen,&c_iBlue);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_uint16   c_iRed       = 0;
      mng_uint16   c_iGreen     = 0;
      mng_uint16   c_iBlue      = 0;
      mng_uint8    c_iMandatory = 0;

   PPCODE:
      // this function was introduced in v1.0.3
      c_rv = _MNG_GET_LASTBACKCHUNK(hHandle,&c_iRed,&c_iGreen,&c_iBlue,&c_iMandatory);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )

MNG.xs  view on Meta::CPAN

      mng_uint8        c_iBitdepth    = 0;
      mng_uint8        c_iColortype   = 0;
      mng_uint8        c_iCompression = 0;
      mng_uint8        c_iFilter      = 0;
      mng_uint8        c_iInterlace   = 0;
   PPCODE:
      c_rv = mng_getchunk_ihdr(hHandle,c_hChunk,&c_iWidth,&c_iHeight,&c_iBitdepth,&c_iColortype,&c_iCompression,&c_iFilter,&c_iInterlace);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

   PREINIT:
      mng_retcode      c_rv;
      mng_handle       c_hChunk   = (mng_handle) hChunk;
      mng_uint32       c_iCount   = 0;
      mng_palette8     c_aPalette;
   PPCODE:
      c_rv = mng_getchunk_plte(hHandle,c_hChunk,&c_iCount,&c_aPalette);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_retcode      c_rv;
      mng_handle       c_hChunk   = (mng_handle) hChunk;
      mng_uint32       c_iRawlen  = 0;
      mng_ptr          c_pRawdata = NULL;

   PPCODE:
      c_rv = mng_getchunk_idat(hHandle,c_hChunk,&c_iRawlen,&c_pRawdata);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_uint16       c_iGreen   = 0;
      mng_uint16       c_iBlue    = 0;
      mng_uint32       c_iRawlen  = 0;
      mng_uint8arr     c_aRawdata;

   PPCODE:
      c_rv = mng_getchunk_trns(hHandle,c_hChunk,&c_bEmpty,&c_bGlobal,&c_iType,&c_iCount,&c_aAlphas,&c_iGray,&c_iRed,&c_iGreen,&c_iBlue,&c_iRawlen,&c_aRawdata);


      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )

MNG.xs  view on Meta::CPAN

      mng_retcode      c_rv;
      mng_handle       c_hChunk = (mng_handle) hChunk;
      mng_bool         c_bEmpty = FALSE;
      mng_uint32       c_iGamma = 0;

   PPCODE:
      c_rv = mng_getchunk_gama(hHandle,c_hChunk,&c_bEmpty,&c_iGamma);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_uint32       c_iGreenx      = 0;
      mng_uint32       c_iGreeny      = 0;
      mng_uint32       c_iBluex       = 0;
      mng_uint32       c_iBluey       = 0;

   PPCODE:
      c_rv = mng_getchunk_chrm(hHandle,c_hChunk, &c_bEmpty, &c_iWhitepointx, &c_iWhitepointy, &c_iRedx, &c_iRedy, &c_iGreenx, &c_iGreeny, &c_iBluex, &c_iBluey);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_retcode      c_rv;
      mng_handle       c_hChunk           = (mng_handle) hChunk;
      mng_bool         c_bEmpty           = FALSE;
      mng_uint8        c_iRenderingintent = 0;

   PPCODE:
      c_rv = mng_getchunk_srgb(hHandle,c_hChunk, &c_bEmpty, &c_iRenderingintent);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_pchar        c_zName        = NULL;
      mng_uint8        c_iCompression = 0;
      mng_uint32       c_iProfilesize = 0;
      mng_ptr          c_pProfile     = NULL;

   PPCODE:
      c_rv = mng_getchunk_iccp(hHandle,c_hChunk, &c_bEmpty, &c_iNamesize, &c_zName, &c_iCompression, &c_iProfilesize, &c_pProfile);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_uint32       c_iKeywordsize = 0;
      mng_pchar        c_zKeyword     = NULL;
      mng_uint32       c_iTextsize    = 0;
      mng_pchar        c_zText        = NULL;

   PPCODE:
      c_rv = mng_getchunk_text(hHandle,c_hChunk,&c_iKeywordsize,&c_zKeyword,&c_iTextsize,&c_zText);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_pchar        c_zKeyword      = NULL;
      mng_uint8        c_iCompression  = 0;
      mng_uint32       c_iTextsize     = 0;
      mng_pchar        c_zText         = NULL;

   PPCODE:
      c_rv = mng_getchunk_ztxt(hHandle,c_hChunk,&c_iKeywordsize,&c_zKeyword,&c_iCompression,&c_iTextsize,&c_zText);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_uint32       c_iTranslationsize    = 0;
      mng_pchar        c_zTranslation        = NULL;
      mng_uint32       c_iTextsize           = 0;
      mng_pchar        c_zText               = NULL;

   PPCODE:
      c_rv = mng_getchunk_itxt(hHandle,c_hChunk,&c_iKeywordsize,&c_zKeyword,&c_iCompressionflag,&c_iCompressionmethod,&c_iLanguagesize,&c_zLanguage,&c_iTranslationsize,&c_zTranslation,&c_iTextsize,&c_zText);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_uint16       c_iGray  = 0;
      mng_uint16       c_iRed   = 0;
      mng_uint16       c_iGreen = 0;
      mng_uint16       c_iBlue  = 0;

   PPCODE:
      c_rv = mng_getchunk_bkgd(hHandle,c_hChunk,&c_bEmpty,&c_iType,&c_iIndex,&c_iGray,&c_iRed,&c_iGreen,&c_iBlue);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_bool         c_bEmpty = FALSE;
      mng_uint32       c_iSizex = 0;
      mng_uint32       c_iSizey = 0;
      mng_uint8        c_iUnit  = 0;

   PPCODE:
      c_rv = mng_getchunk_phys(hHandle,c_hChunk,&c_bEmpty,&c_iSizex,&c_iSizey,&c_iUnit);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_handle       c_hChunk = (mng_handle) hChunk;
      mng_bool         c_bEmpty = FALSE;
      mng_uint8        c_iType  = 0;
      mng_uint8arr4    c_aBits;

   PPCODE:
      c_rv = mng_getchunk_sbit(hHandle,c_hChunk,&c_bEmpty,&c_iType,&c_aBits);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_pchar        c_zName         = NULL;
      mng_uint8        c_iSampledepth  = 0;
      mng_uint32       c_iEntrycount   = 0;
      mng_ptr          c_pEntries      = NULL;

   PPCODE:
      c_rv = mng_getchunk_splt(hHandle,c_hChunk,&c_bEmpty,&c_iNamesize,&c_zName,&c_iSampledepth,&c_iEntrycount,&c_pEntries);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_retcode      c_rv;
      mng_handle       c_hChunk      = (mng_handle) hChunk;
      mng_uint32       c_iEntrycount = 0;
      mng_uint16arr    c_aEntries;

   PPCODE:
      c_rv = mng_getchunk_hist(hHandle,c_hChunk,&c_iEntrycount,&c_aEntries);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_uint8        c_iDay    = 0;
      mng_uint8        c_iHour   = 0;
      mng_uint8        c_iMinute = 0;
      mng_uint8        c_iSecond = 0;

   PPCODE:
      c_rv = mng_getchunk_time(hHandle,c_hChunk,&c_iYear,&c_iMonth,&c_iDay,&c_iHour,&c_iMinute,&c_iSecond);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_uint32       c_iLayercount = 0;
      mng_uint32       c_iFramecount = 0;
      mng_uint32       c_iPlaytime   = 0;
      mng_uint32       c_iSimplicity = 0;

   PPCODE:
      c_rv = mng_getchunk_mhdr(hHandle,c_hChunk,&c_iWidth,&c_iHeight,&c_iTicks,&c_iLayercount,&c_iFramecount,&c_iPlaytime,&c_iSimplicity);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_uint32       c_iItermin     = 0;
      mng_uint32       c_iItermax     = 0;
      mng_uint32       c_iCount       = 0;
      mng_uint32p      c_pSignals     = NULL;

   PPCODE:
      c_rv = mng_getchunk_loop(hHandle,c_hChunk,&c_iLevel,&c_iRepeat,&c_iTermination,&c_iItermin,&c_iItermax,&c_iCount,&c_pSignals);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_retcode      c_rv;
      mng_handle       c_hChunk = (mng_handle) hChunk;
      mng_uint8        c_iLevel = 0;


   PPCODE:
      c_rv = mng_getchunk_endl(hHandle,c_hChunk,&c_iLevel);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_int32        c_iLeftcb    = 0;
      mng_int32        c_iRightcb   = 0;
      mng_int32        c_iTopcb     = 0;
      mng_int32        c_iBottomcb  = 0;

   PPCODE:
      c_rv = mng_getchunk_defi(hHandle,c_hChunk,&c_iObjectid,&c_iDonotshow,&c_iConcrete,&c_bHasloca,&c_iXlocation,&c_iYlocation,&c_bHasclip,&c_iLeftcb,&c_iRightcb,&c_iTopcb,&c_iBottomcb);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_uint16       c_iGreen       = 0;
      mng_uint16       c_iBlue        = 0;
      mng_uint16       c_iAlpha       = 0;
      mng_uint8        c_iViewable    = 0;

   PPCODE:
      c_rv = mng_getchunk_basi(hHandle,c_hChunk,&c_iWidth,&c_iHeight,&c_iBitdepth,&c_iColortype,&c_iCompression,&c_iFilter,&c_iInterlace,&c_iRed,&c_iGreen,&c_iBlue,&c_iAlpha,&c_iViewable);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_bool         c_bHasloca      = FALSE;
      mng_uint8        c_iLocationtype = 0;
      mng_int32        c_iLocationx    = 0;
      mng_int32        c_iLocationy    = 0;

   PPCODE:
      c_rv = mng_getchunk_clon(hHandle,c_hChunk,&c_iSourceid,&c_iCloneid,&c_iClonetype,&c_iDonotshow,&c_iConcrete,&c_bHasloca,&c_iLocationtype,&c_iLocationx,&c_iLocationy);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_uint8        c_iTargettype = 0;
      mng_int32        c_iTargetx    = 0;
      mng_int32        c_iTargety    = 0;
      mng_uint32       c_iCount      = 0;

   PPCODE:
      c_rv = mng_getchunk_past(hHandle,c_hChunk,&c_iDestid,&c_iTargettype,&c_iTargetx,&c_iTargety,&c_iCount);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_int32        c_iBoundaryl    = 0;
      mng_int32        c_iBoundaryr    = 0;
      mng_int32        c_iBoundaryt    = 0;
      mng_int32        c_iBoundaryb    = 0;

   PPCODE:
      c_rv = mng_getchunk_past_src(hHandle,c_hChunk,iEntry,&c_iSourceid,&c_iComposition,&c_iOrientation,&c_iOffsettype,&c_iOffsetx,&c_iOffsety,&c_iBoundarytype,&c_iBoundaryl,&c_iBoundaryr,&c_iBoundaryt,&c_iBoundaryb);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_retcode      c_rv;
      mng_handle       c_hChunk     = (mng_handle) hChunk;
      mng_uint32       c_iCount     = 0;
      mng_uint16p      c_pObjectids = NULL;

   PPCODE:
      c_rv = mng_getchunk_disc(hHandle,c_hChunk,&c_iCount,&c_pObjectids);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_uint16       c_iBlue      = 0;
      mng_uint8        c_iMandatory = 0;
      mng_uint16       c_iImageid   = 0;
      mng_uint8        c_iTile      = 0;

   PPCODE:
      c_rv = mng_getchunk_back(hHandle,c_hChunk,&c_iRed,&c_iGreen,&c_iBlue,&c_iMandatory,&c_iImageid,&c_iTile);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_int32        c_iBoundaryt      = 0;
      mng_int32        c_iBoundaryb      = 0;
      mng_uint32       c_iCount          = 0;
      mng_uint32p      c_pSyncids        = NULL;

   PPCODE:
      c_rv = mng_getchunk_fram(hHandle,c_hChunk,&c_bEmpty,&c_iMode,&c_iNamesize,&c_zName,&c_iChangedelay,&c_iChangetimeout,&c_iChangeclipping,&c_iChangesyncid,&c_iDelay,&c_iTimeout,&c_iBoundarytype,&c_iBoundaryl,&c_iBoundaryr,&c_iBoundaryt,&c_iBounda...

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_uint16       c_iLastid   = 0;
      mng_uint8        c_iMovetype = 0;
      mng_int32        c_iMovex    = 0;
      mng_int32        c_iMovey    = 0;

   PPCODE:
      c_rv = mng_getchunk_move(hHandle,c_hChunk,&c_iFirstid,&c_iLastid,&c_iMovetype,&c_iMovex,&c_iMovey);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_int32        c_iClipr    = 0;
      mng_int32        c_iClipt    = 0;
      mng_int32        c_iClipb    = 0;


   PPCODE:
      c_rv = mng_getchunk_clip(hHandle,c_hChunk,&c_iFirstid,&c_iLastid,&c_iCliptype,&c_iClipl,&c_iClipr,&c_iClipt,&c_iClipb);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_bool         c_bEmpty   = FALSE;
      mng_uint16       c_iFirstid = 0;
      mng_uint16       c_iLastid  = 0;
      mng_uint8        c_iMode    = 0;

   PPCODE:
      c_rv = mng_getchunk_show(hHandle,c_hChunk,&c_bEmpty,&c_iFirstid,&c_iLastid,&c_iMode);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_uint8        c_iTermaction = 0;
      mng_uint8        c_iIteraction = 0;
      mng_uint32       c_iDelay      = 0;
      mng_uint32       c_iItermax    = 0;

   PPCODE:
      c_rv = mng_getchunk_term(hHandle,c_hChunk,&c_iTermaction,&c_iIteraction,&c_iDelay,&c_iItermax);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_handle       c_hChunk      = (mng_handle) hChunk;
      mng_bool         c_bEmpty      = FALSE;
      mng_uint8        c_iOffsettype = 0;
      mng_uint32       c_iCount      = 0;

   PPCODE:
      c_rv = mng_getchunk_save(hHandle,c_hChunk,&c_bEmpty,&c_iOffsettype,&c_iCount);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_uint32       c_iLayernr    = 0;
      mng_uint32       c_iFramenr    = 0;
      mng_uint32       c_iNamesize   = 0;
      mng_pchar        c_zName       = NULL;

   PPCODE:
      c_rv = mng_getchunk_save_entry(hHandle,c_hChunk,iEntry,&c_iEntrytype,&c_aiOffset,&c_aiStarttime,&c_iLayernr,&c_iFramenr,&c_iNamesize,&c_zName);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_retcode      c_rv;
      mng_handle       c_hChunk    = (mng_handle) hChunk;
      mng_uint32       c_iNamesize = 0;
      mng_pchar        c_zName     = NULL;

   PPCODE:
      c_rv = mng_getchunk_seek(hHandle,c_hChunk,&c_iNamesize,&c_zName);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_handle       c_hChunk      = (mng_handle) hChunk;
      mng_uint16       c_iSnapshotid = 0;
      mng_uint32       c_iNamesize   = 0;
      mng_pchar        c_zName       = NULL;

   PPCODE:
      c_rv = mng_getchunk_expi(hHandle,c_hChunk,&c_iSnapshotid,&c_iNamesize,&c_zName);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_retcode      c_rv;
      mng_handle       c_hChunk     = (mng_handle) hChunk;
      mng_uint8        c_iDeltatype = 0;
      mng_uint8        c_iPriority  = 0;

   PPCODE:
      c_rv = mng_getchunk_fpri(hHandle,c_hChunk,&c_iDeltatype,&c_iPriority);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_retcode      c_rv;
      mng_handle       c_hChunk        = (mng_handle) hChunk;
      mng_uint32       c_iKeywordssize = 0;
      mng_pchar        c_zKeywords     = NULL;

   PPCODE:
      c_rv = mng_getchunk_need(hHandle,c_hChunk,&c_iKeywordssize,&c_zKeywords);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_bool         c_bEmpty = FALSE;
      mng_uint32       c_iSizex = 0;
      mng_uint32       c_iSizey = 0;
      mng_uint8        c_iUnit  = 0;

   PPCODE:
      c_rv = mng_getchunk_phyg(hHandle,c_hChunk,&c_bEmpty,&c_iSizex,&c_iSizey,&c_iUnit);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_uint8        c_iAlphasampledepth = 0;
      mng_uint8        c_iAlphacompression = 0;
      mng_uint8        c_iAlphafilter      = 0;
      mng_uint8        c_iAlphainterlace   = 0;

   PPCODE:
      c_rv = mng_getchunk_jhdr(hHandle,c_hChunk,&c_iWidth,&c_iHeight,&c_iColortype,&c_iImagesampledepth,&c_iImagecompression,&c_iImageinterlace,&c_iAlphasampledepth,&c_iAlphacompression,&c_iAlphafilter,&c_iAlphainterlace);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_retcode      c_rv;
      mng_handle       c_hChunk   = (mng_handle) hChunk;
      mng_uint32       c_iRawlen  = 0;
      mng_ptr          c_pRawdata = NULL;

   PPCODE:
      c_rv = mng_getchunk_jdat(hHandle,c_hChunk,&c_iRawlen,&c_pRawdata);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_uint32       c_iBlockwidth  = 0;
      mng_uint32       c_iBlockheight = 0;
      mng_uint32       c_iBlockx      = 0;
      mng_uint32       c_iBlocky      = 0;

   PPCODE:
      c_rv = mng_getchunk_dhdr(hHandle,c_hChunk,&c_iObjectid,&c_iImagetype,&c_iDeltatype,&c_iBlockwidth,&c_iBlockheight,&c_iBlockx,&c_iBlocky);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_handle       c_hChunk       = (mng_handle) hChunk;
      mng_uint8        c_iColortype   = 0;
      mng_uint8        c_iSampledepth = 0;
      mng_uint8        c_iFilltype    = 0;

   PPCODE:
      c_rv = mng_getchunk_prom(hHandle,c_hChunk,&c_iColortype,&c_iSampledepth,&c_iFilltype);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

   PREINIT:
      mng_retcode      c_rv;
      mng_handle       c_hChunk = (mng_handle) hChunk;
      mng_uint32       c_iCount = 0;

   PPCODE:
      c_rv = mng_getchunk_pplt(hHandle,c_hChunk,&c_iCount);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_uint16       c_iGreen = 0;
      mng_uint16       c_iBlue  = 0;
      mng_uint16       c_iAlpha = 0;
      mng_bool         c_bUsed  = FALSE;

   PPCODE:
      c_rv = mng_getchunk_pplt_entry(hHandle,c_hChunk,iEntry,&c_iRed,&c_iGreen,&c_iBlue,&c_iAlpha,&c_bUsed);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_retcode      c_rv;
      mng_handle       c_hChunk      = (mng_handle) hChunk;
      mng_uint32       c_iCount      = 0;
      mng_chunkidp     c_pChunknames = NULL;

   PPCODE:
      c_rv = mng_getchunk_drop(hHandle,c_hChunk,&c_iCount,&c_pChunknames);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_chunkid      c_iChunkname    = 0;
      mng_uint8        c_iPolarity     = 0;
      mng_uint32       c_iKeywordssize = 0;
      mng_pchar        c_zKeywords     = NULL;

   PPCODE:
      c_rv = mng_getchunk_dbyk(hHandle,c_hChunk,&c_iChunkname,&c_iPolarity,&c_iKeywordssize,&c_zKeywords);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

   PREINIT:
      mng_retcode      c_rv;
      mng_handle       c_hChunk = (mng_handle) hChunk;
      mng_uint32       c_iCount = 0;

   PPCODE:
      c_rv = mng_getchunk_ordr(hHandle,c_hChunk,&c_iCount);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_retcode      c_rv;
      mng_handle       c_hChunk     = (mng_handle) hChunk;
      mng_chunkid      c_iChunkname = 0;
      mng_uint8        c_iOrdertype = 0;

   PPCODE:
      c_rv = mng_getchunk_ordr_entry(hHandle,c_hChunk,iEntry,&c_iChunkname,&c_iOrdertype);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_uint16       c_iMR      = 0;
      mng_uint16       c_iMT      = 0;
      mng_uint16       c_iMB      = 0;
      mng_uint16       c_iMethodY = 0;

   PPCODE:
      c_rv = mng_getchunk_magn(hHandle,c_hChunk,&c_iFirstid,&c_iLastid,&c_iMethodX,&c_iMX,&c_iMY,&c_iML,&c_iMR,&c_iMT,&c_iMB,&c_iMethodY);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

MNG.xs  view on Meta::CPAN

      mng_handle       c_hChunk     = (mng_handle) hChunk;
      mng_chunkid      c_iChunkname = 0;
      mng_uint32       c_iRawlen    = 0;
      mng_ptr          c_pRawdata   = NULL;

   PPCODE:
      c_rv = mng_getchunk_unknown(hHandle,c_hChunk,&c_iChunkname,&c_iRawlen,&c_pRawdata);

      XPUSHs( sv_2mortal( newSViv( c_rv ) ) );
      if ( c_rv == MNG_NOERROR )
      {

 view all matches for this distribution


Graphics-PLplot

 view release on metacpan or  search on metacpan

PLplot.xs  view on Meta::CPAN

  PLFLT ry
 PREINIT:
  PLFLT wx;
  PLFLT wy;
  PLINT window;
 PPCODE:
  c_plcalc_world( rx, ry, &wx, &wy, &window );
  XPUSHs( sv_2mortal(newSVnv(wx)));
  XPUSHs( sv_2mortal(newSVnv(wy)));
  XPUSHs( sv_2mortal(newSViv(window)));

PLplot.xs  view on Meta::CPAN

void
c_plgchr()
 PREINIT:
  PLFLT p_def;
  PLFLT p_ht;
 PPCODE:
  c_plgchr( &p_def, &p_ht );
  XPUSHs( sv_2mortal(newSVnv(p_def)));
  XPUSHs( sv_2mortal(newSVnv(p_ht)));

void

PLplot.xs  view on Meta::CPAN

  PLINT icol0
 PREINIT:
  PLINT r;
  PLINT g;
  PLINT b;
 PPCODE:
  c_plgcol0( icol0, &r, &g, &b );
  XPUSHs( sv_2mortal(newSViv(r)));
  XPUSHs( sv_2mortal(newSViv(g)));
  XPUSHs( sv_2mortal(newSViv(b)));

PLplot.xs  view on Meta::CPAN

c_plgcolbg()
 PREINIT:
  PLINT r;
  PLINT g;
  PLINT b;
 PPCODE:
  c_plgcolbg( &r, &g, &b );
  XPUSHs( sv_2mortal(newSViv(r)));
  XPUSHs( sv_2mortal(newSViv(g)));
  XPUSHs( sv_2mortal(newSViv(b)));

PLplot.xs  view on Meta::CPAN

 PREINIT:
  PLFLT p_mar;
  PLFLT p_aspect;
  PLFLT p_jx;
  PLFLT p_jy;
 PPCODE:
  c_plgdidev( &p_mar, &p_aspect, &p_jx, &p_jy );
  XPUSHs( sv_2mortal(newSVnv(p_mar)));
  XPUSHs( sv_2mortal(newSVnv(p_aspect)));
  XPUSHs( sv_2mortal(newSVnv(p_jx)));
  XPUSHs( sv_2mortal(newSVnv(p_jy)));

PLplot.xs  view on Meta::CPAN

 PREINIT:
  PLFLT p_xmin;
  PLFLT p_ymin;
  PLFLT p_xmax;
  PLFLT p_ymax;
 PPCODE:
  c_plgdiplt( &p_xmin, &p_ymin, &p_xmax, &p_ymax );
  XPUSHs( sv_2mortal(newSVnv(p_xmin)));
  XPUSHs( sv_2mortal(newSVnv(p_ymin)));
  XPUSHs( sv_2mortal(newSVnv(p_xmax)));
  XPUSHs( sv_2mortal(newSVnv(p_ymax)));

PLplot.xs  view on Meta::CPAN

c_plgfam()
 PREINIT:
  PLINT fam;
  PLINT num;
  PLINT bmax;
 PPCODE:
  c_plgfam( &fam, &num, &bmax );
  XPUSHs( sv_2mortal(newSViv(fam)));
  XPUSHs( sv_2mortal(newSViv(num)));
  XPUSHs( sv_2mortal(newSViv(bmax)));

PLplot.xs  view on Meta::CPAN

  PLFLT yp;
  PLINT xleng;
  PLINT yleng;
  PLINT xoff;
  PLINT yoff;
 PPCODE:
  c_plgpage( &xp, &yp, &xleng, &yleng, &xoff, &yoff);
  XPUSHs( sv_2mortal(newSVnv(xp)));
  XPUSHs( sv_2mortal(newSVnv(yp)));
  XPUSHs( sv_2mortal(newSViv(xleng)));
  XPUSHs( sv_2mortal(newSViv(yleng)));

PLplot.xs  view on Meta::CPAN

 PREINIT:
  PLFLT xmin;
  PLFLT ymin;
  PLFLT xmax;
  PLFLT ymax;
 PPCODE:
  c_plgspa( &xmin, &ymin, &xmax, &ymax );
  XPUSHs( sv_2mortal(newSVnv(xmin)));
  XPUSHs( sv_2mortal(newSVnv(ymin)));
  XPUSHs( sv_2mortal(newSVnv(xmax)));
  XPUSHs( sv_2mortal(newSVnv(ymax)));

PLplot.xs  view on Meta::CPAN

 PREINIT:
  PLFLT p_xmin;
  PLFLT p_xmax;
  PLFLT p_ymin;
  PLFLT p_ymax;
 PPCODE:
  c_plgvpd( &p_xmin, &p_xmax, &p_ymin, &p_ymax );
  XPUSHs( sv_2mortal(newSVnv(p_xmin)));
  XPUSHs( sv_2mortal(newSVnv(p_xmax)));
  XPUSHs( sv_2mortal(newSVnv(p_ymin)));
  XPUSHs( sv_2mortal(newSVnv(p_ymax)));

PLplot.xs  view on Meta::CPAN

 PREINIT:
  PLFLT p_xmin;
  PLFLT p_xmax;
  PLFLT p_ymin;
  PLFLT p_ymax;
 PPCODE:
  c_plgvpw( &p_xmin, &p_xmax, &p_ymin, &p_ymax );
  XPUSHs( sv_2mortal(newSVnv(p_xmin)));
  XPUSHs( sv_2mortal(newSVnv(p_xmax)));
  XPUSHs( sv_2mortal(newSVnv(p_ymin)));
  XPUSHs( sv_2mortal(newSVnv(p_ymax)));

PLplot.xs  view on Meta::CPAN

void
c_plgxax()
 PREINIT:
  PLINT digmax;
  PLINT digits;
 PPCODE:
  c_plgxax( &digmax, &digits );
  XPUSHs( sv_2mortal(newSViv(digmax)));
  XPUSHs( sv_2mortal(newSViv(digits)));

void
c_plgyax()
 PREINIT:
  PLINT digmax;
  PLINT digits;
 PPCODE:
  c_plgyax( &digmax, &digits );
  XPUSHs( sv_2mortal(newSViv(digmax)));
  XPUSHs( sv_2mortal(newSViv(digits)));

void
c_plgzax()
 PREINIT:
  PLINT digmax;
  PLINT digits;
 PPCODE:
  c_plgzax( &digmax, &digits );
  XPUSHs( sv_2mortal(newSViv(digmax)));
  XPUSHs( sv_2mortal(newSViv(digits)));


PLplot.xs  view on Meta::CPAN

plgFileDevs()
 PREINIT:
  char ** menustr;
  char ** devname;
  int ndev;
 PPCODE:
  /* Guess at largest number of drivers !! */
  menustr = get_mortalspace( 1024, 'v');
  devname = get_mortalspace( 1024, 'v');
  plgFileDevs(&menustr, &devname, &ndev);
  XPUSHs( newRV_noinc( (SV*)unpack1Dchar( menustr, ndev) ));

PLplot.xs  view on Meta::CPAN

plgDevs()
 PREINIT:
  char ** menustr;
  char ** devname;
  int ndev;
 PPCODE:
  /* Guess at largest number of drivers !! */
  menustr = get_mortalspace( 1024, 'v');
  devname = get_mortalspace( 1024, 'v');
  plgDevs(&menustr, &devname, &ndev);
  XPUSHs( newRV_noinc( (SV*)unpack1Dchar( menustr, ndev) ));

PLplot.xs  view on Meta::CPAN

plParseOpts( argv, mode )
  char ** argv
  PLINT mode
 PREINIT:
  int status;
 PPCODE:
  /* $ARGV[0] is not the program name in perl */
  status = plParseOpts( &ix_argv, argv, mode | PL_PARSE_NOPROGRAM );
  XPUSHs( sv_2mortal(newSViv(status) ));  
  XPUSHs( newRV_noinc( (SV*)unpack1Dchar( argv, ix_argv) ));

PLplot.xs  view on Meta::CPAN

void
plGetCursor()
 PREINIT:
   PLGraphicsIn gin;
   int status;
 PPCODE:
  status = plGetCursor( &gin );
  XPUSHs(sv_2mortal(newSVpv( "dX", 0 )));
  XPUSHs(sv_2mortal(newSVnv( gin.dX )));
  XPUSHs(sv_2mortal(newSVpv( "dY", 0 )));
  XPUSHs(sv_2mortal(newSVnv( gin.dY )));

 view all matches for this distribution


Graphics-Raylib

 view release on metacpan or  search on metacpan

XS/XS.xs  view on Meta::CPAN

    Image img;
    int literal_color = 0;
    int currwidth = 0;
    IntRectangle where = { 0, 0, 0, 0 };
    ImageSet_t *my_ImageSet = ImageSet;
  PPCODE:
    if (!SvROK(array_ref) || SvTYPE(SvRV(array_ref)) != SVt_PVAV)
        croak("expected ARRAY ref as first argument");
    literal_color = !SvOK(color_cb);
    if (!literal_color && (!SvROK(color_cb) || SvTYPE(SvRV(color_cb)) != SVt_PVCV))
        croak("expected CODE ref as second argument");

 view all matches for this distribution


Graphics-SANE

 view release on metacpan or  search on metacpan

SANE.xs  view on Meta::CPAN

  CODE:
    sane_exit();

void
get_devices()
  PPCODE:
    SANE_Status sts;
    const SANE_Device **list,*dev;
    int cnt;
    sts = sane_get_devices(&list,0);
    if (sts)

 view all matches for this distribution


Graphics-TIFF

 view release on metacpan or  search on metacpan

TIFF.xs  view on Meta::CPAN

    newCONSTSUB(stash, "TIFFPRINT_JPEGACTABLES", newSViv(TIFFPRINT_JPEGACTABLES));
    newCONSTSUB(stash, "TIFFPRINT_JPEGDCTABLES", newSViv(TIFFPRINT_JPEGDCTABLES));

void
tiff_GetVersion (class)
        PPCODE:
                XPUSHs(sv_2mortal(newSVpv((char *) TIFFGetVersion(), 0)));

void
tiff_IsCODECConfigured (class, compression)
                uint16_t compression
        PPCODE:
                XPUSHs(sv_2mortal(newSViv(TIFFIsCODECConfigured(compression))));

void
tiff__Open (class, path, flags)
		const char*	path
		const char*	flags
	INIT:
                TIFF		*tif;
        PPCODE:
                tif = TIFFOpen(path, flags);
                XPUSHs(sv_2mortal(newSViv(PTR2IV(tif))));

void
tiff_Close (tif)
                TIFF		*tif;
        PPCODE:
                TIFFClose(tif);

void
tiff_FileName (tif)
                TIFF		*tif;
        PPCODE:
                XPUSHs(sv_2mortal(newSVpv((char *) TIFFFileName(tif), 0)));

void
tiff_ReadDirectory (tif)
                TIFF		*tif;
        PPCODE:
	        XPUSHs(sv_2mortal(newSViv(TIFFReadDirectory(tif))));

void
tiff_WriteDirectory (tif)
                TIFF		*tif;
        PPCODE:
	        XPUSHs(sv_2mortal(newSViv(TIFFWriteDirectory(tif))));

void
tiff_ReadEXIFDirectory (tif, diroff)
                TIFF		*tif
                toff_t          diroff;
        PPCODE:
	        XPUSHs(sv_2mortal(newSViv(TIFFReadEXIFDirectory(tif, diroff))));

void
tiff_NumberOfDirectories (tif)
                TIFF		*tif
        PPCODE:
	        XPUSHs(sv_2mortal(newSViv(TIFFNumberOfDirectories(tif))));

void
tiff_SetDirectory (tif, dirnum)
                TIFF		*tif
                uint16_t        dirnum;
        PPCODE:
	        XPUSHs(sv_2mortal(newSViv(TIFFSetDirectory(tif, dirnum))));

void
tiff_SetSubDirectory(tif, diroff)
                TIFF		*tif
                uint64_t        diroff;
        PPCODE:
	        XPUSHs(sv_2mortal(newSViv(TIFFSetSubDirectory(tif, diroff))));

void
tiff_GetField (tif, tag)
                TIFF            *tif

TIFF.xs  view on Meta::CPAN

                uint32_t        ui32;
                uint64_t        *aui;
                float           f;
                float           *af;
                int             nvals;
        PPCODE:
/* See http://www.libtiff.org/man/TIFFGetField.3t.html */
                switch (tag) {
                    /* byte single uint8 */
                    /* short single uint16 */
		    case TIFFTAG_BITSPERSAMPLE:

TIFF.xs  view on Meta::CPAN

	INIT:
                uint16_t        ui16, ui16_2, *aui16, *aui16_2, *aui16_3;
                uint32_t        ui32;
                uint64_t        *aui;
                float           f;
        PPCODE:
                switch (tag) {
                    /* byte single uint8 */
                    /* short single uint16 */
		    case TIFFTAG_BITSPERSAMPLE:
		    case TIFFTAG_COMPRESSION:

TIFF.xs  view on Meta::CPAN

                uint32_t        tag
	INIT:
                uint16_t        ui16, ui16_2;
                uint32_t        ui32;
                float           f;
        PPCODE:
                switch (tag) {

                    /* single float */
		    case TIFFTAG_XRESOLUTION:
		    case TIFFTAG_YRESOLUTION:

TIFF.xs  view on Meta::CPAN

                }

void
tiff_IsTiled (tif)
                TIFF            *tif
        PPCODE:
                XPUSHs(sv_2mortal(newSViv(TIFFIsTiled(tif))));

void
tiff_ScanlineSize (tif)
                TIFF            *tif
        PPCODE:
                XPUSHs(sv_2mortal(newSViv(TIFFScanlineSize(tif))));

void
tiff_StripSize (tif)
                TIFF            *tif
        PPCODE:
                XPUSHs(sv_2mortal(newSViv(TIFFStripSize(tif))));

void
tiff_NumberOfStrips (tif)
                TIFF            *tif
        PPCODE:
                XPUSHs(sv_2mortal(newSViv(TIFFNumberOfStrips(tif))));

void
tiff_TileSize (tif)
                TIFF            *tif
        PPCODE:
                XPUSHs(sv_2mortal(newSViv(TIFFTileSize(tif))));

void
tiff_TileRowSize (tif)
                TIFF            *tif
        PPCODE:
                XPUSHs(sv_2mortal(newSViv(TIFFTileRowSize(tif))));

void
tiff_ComputeStrip (tif, row, sample)
                TIFF            *tif
                uint32_t        row
                uint16_t        sample
        PPCODE:
                XPUSHs(sv_2mortal(newSViv(TIFFComputeStrip(tif, row, sample))));

void
tiff_ReadEncodedStrip (tif, strip, size)
                TIFF            *tif
                uint32_t        strip
                tmsize_t        size
	INIT:
                void            *buf;
                tmsize_t        stripsize, bufsize;
        PPCODE:
                stripsize = TIFFStripSize(tif);
                buf = _TIFFmalloc(stripsize);
                bufsize = TIFFReadEncodedStrip(tif, strip, buf, size);
                if (bufsize > 0) {
                    XPUSHs(sv_2mortal(newSVpvn(buf, bufsize)));

TIFF.xs  view on Meta::CPAN

                uint32_t        strip
                void*           data
                tmsize_t        size
	INIT:
                tmsize_t        stripsize;
        PPCODE:
                stripsize = TIFFWriteEncodedStrip(tif, strip, data, size);
                XPUSHs(sv_2mortal(newSViv(stripsize)));

void
tiff_ReadRawStrip (tif, strip, size)

TIFF.xs  view on Meta::CPAN

                uint32_t        strip
                tmsize_t        size
	INIT:
                void            *buf;
                tmsize_t        stripsize, bufsize;
        PPCODE:
                stripsize = TIFFStripSize(tif);
                buf = _TIFFmalloc(stripsize);
                bufsize = TIFFReadRawStrip(tif, strip, buf, size);
                if (bufsize > 0) {
                    XPUSHs(sv_2mortal(newSVpvn(buf, bufsize)));

TIFF.xs  view on Meta::CPAN

                uint32_t        z
                uint16_t        s
	INIT:
                void            *buf;
                tmsize_t        tilesize, bufsize;
        PPCODE:
                tilesize = TIFFTileSize(tif);
                buf = _TIFFmalloc(tilesize);
                bufsize = TIFFReadTile(tif, buf, x, y, z, s);
                if (bufsize > 0) {
                    XPUSHs(sv_2mortal(newSVpvn(buf, bufsize)));

 view all matches for this distribution


Graphics-VTK

 view release on metacpan or  search on metacpan

ChangeLog  view on Meta::CPAN


	* typemap: Fixed typemap 

2002-10-20 09:18  cerney

	* parseWrap, Common/Common.xs: Modified to not use PPCODE sections
	in xs code. These are now emulated wih CODE sections and some extra
	XS macros. For some reason, xsubpp did not like PPCODE sections in
	multiple CASE section in a XS function. This made overridden methods
	that return a list of values (e.g. vtkDataArray::GetRange)
	impossible to implement in XS code.  

2002-10-19 10:25  cerney

 view all matches for this distribution


Graphite-Simple

 view release on metacpan or  search on metacpan

Simple.xs  view on Meta::CPAN

OUTPUT:
    RETVAL


IV is_connected (GraphiteXS_Object *self)
PPCODE:
    mXPUSHi(self->is_connected ? 1 : 0);
    XSRETURN(1);


IV connect (GraphiteXS_Object *self)
PPCODE:
    connect_(self);
    mXPUSHi(self->is_connected ? 1 : 0);
    XSRETURN(1);


IV reconnect (GraphiteXS_Object *self)
PPCODE:
    disconnect_(self);
    connect_(self);
    mXPUSHi(self->is_connected ? 1 : 0);
    XSRETURN(1);


void disconnect (GraphiteXS_Object *self)
PPCODE:
    disconnect_(self);
    XSRETURN_EMPTY;


HV* get_bulk_metrics (GraphiteXS_Object *self)

Simple.xs  view on Meta::CPAN

OUTPUT:
    RETVAL


SV* send_bulk (GraphiteXS_Object* self)
PPCODE:

    IV is_success = 1;

    if (self->is_connected) {

Simple.xs  view on Meta::CPAN

    mXPUSHi(move(is_success));
    XSRETURN(1);


SV* send_bulk_delegate (GraphiteXS_Object *self)
PPCODE:

    const char *sender = SvPVX(self->sender_name);

    if (!sender)
        croak("No sender was specified");

Simple.xs  view on Meta::CPAN

OUTPUT:
    RETVAL


void clear_bulk (GraphiteXS_Object *self)
PPCODE:
    clear_bulk_(self);
    XSRETURN_EMPTY;


void incr_bulk (GraphiteXS_Object *self, SV* key, NV value = 1)
PPCODE:
    bool is_ok = false;
    if (key != &PL_sv_undef) {
        uint32_t key_type = SvTYPE(key);
        if (key_type == SVt_PVLV || key_type == SVt_PVMG) {
            // SVt_PVLV can be returned from substr

Simple.xs  view on Meta::CPAN


    XSRETURN_EMPTY;


void append_bulk (GraphiteXS_Object *self, HV* hv, SV* prefix = &PL_sv_undef)
PPCODE:

    if (SvTIED_mg((SV *) hv, PERL_MAGIC_tied))
        croak("Tied hashes are not supported");

    bool use_prefix = false;

Simple.xs  view on Meta::CPAN


    XSRETURN_EMPTY;


SV* is_valid_key (GraphiteXS_Object *self, SV* key)
PPCODE:
    bool is_valid = is_valid_key_(self, move(key));
    mXPUSHi( move(is_valid ? 1 : 0) );
    XSRETURN(1);


IV get_invalid_key_counter (GraphiteXS_Object *self)
PPCODE:
    mXPUSHi( self->invalid_key_counter );
    XSRETURN(1);


void check_and_bump_invalid_metric (GraphiteXS_Object *self, SV* key)
PPCODE:
    if ( SVt_NULL != SvTYPE(key) ) {
        uint32_t counter = move(self->invalid_key_counter);
        self->invalid_key_counter = 0;
        increment_hash_value_by( self->bulk_hv, move(key), move(counter) );
    }
    XSRETURN_EMPTY;


IV is_metric_blocked (GraphiteXS_Object *self, SV* key)
PPCODE:
    bool is_blocked = false;
    if ( is_valid_key_(self, key) )
        is_blocked = is_metric_blocked_(self, move(key));
    mXPUSHi( move(is_blocked ? 1 : 0) );
    XSRETURN(1);


void set_blocked_metrics_re (GraphiteXS_Object *self, SV* block_re = &PL_sv_undef)
PPCODE:
    set_blocked_metrics_re_(self, block_re);
    XSRETURN_EMPTY;


void DESTROY (...)
PPCODE:
    GraphiteXS_Object *self = (GraphiteXS_Object *) SvUV(SvRV(ST(0)));
    if (PL_dirty) // global destruction
        return;
    if (self->sender_name && SvREFCNT(self->sender_name)) // sv_clear
        SvREFCNT_dec_NN(self->sender_name);

 view all matches for this distribution


Grid-Transform

 view release on metacpan or  search on metacpan

Transform.xs  view on Meta::CPAN

void
grid (self, aref=0)
    Grid::Transform self
    SV *aref
PROTOTYPE: $;\@
PPCODE:
    if (items == 2) {
        AV *av = (AV *)SvRV(aref);
        if (! (SvRV(aref) && SvTYPE(SvRV(aref)) == SVt_PVAV)) {
            croak ("reference to an array expected");
        }

Transform.xs  view on Meta::CPAN

rotate_180 (self)
    Grid::Transform self
PROTOTYPE: $
ALIAS:
    rotate180 = 1
PPCODE:
    FIX_DIRTY_GRID(self);
    REVERSE_AV(self->grid);
    XSRETURN(1);

void

Transform.xs  view on Meta::CPAN

ALIAS:
    rotate90 = 1
PREINIT:
    SV **tmp;
    IV n, i, row, col;
PPCODE:
    FIX_DIRTY_GRID(self);
    n = self->rows * self->columns;
    New(0, tmp, n, SV*);
    for (i=0, col=0; col<self->columns; col++) {
        for (row=self->rows-1; row>=0; row--, i++) {

Transform.xs  view on Meta::CPAN

ALIAS:
    rotate270 = 1
PREINIT:
    SV **tmp;
    IV n, i, row, col;
PPCODE:
    FIX_DIRTY_GRID(self);
    n = self->rows * self->columns;
    New(0, tmp, n, SV*);
    for (i=0, col=self->columns-1; col>=0; col--) {
        for (row=0; row<self->rows; row++, i++) {

Transform.xs  view on Meta::CPAN

    Grid::Transform self
PROTOTYPE: $
PREINIT:
    SV **tmp;
    IV n, i, row, col;
PPCODE:
    FIX_DIRTY_GRID(self);
    n = self->rows * self->columns;
    New(0, tmp, n, SV*);
    for (i=0, col=self->columns-1; col>=0; col--) {
        for (row=self->rows-1; row>=0; row--, i++) {

Transform.xs  view on Meta::CPAN

ALIAS:
    countertranspose = 1
PREINIT:
    SV **tmp;
    IV n, i, row, col;
PPCODE:
    FIX_DIRTY_GRID(self);
    n = self->rows * self->columns;
    New(0, tmp, n, SV*);
    for (i=0, col=0; col<self->columns; col++) {
        for (row=0; row<self->rows; row++, i++) {

Transform.xs  view on Meta::CPAN

PROTOTYPE: $
ALIAS:
    mirror_horizontal = 1
PREINIT:
    IV row, lcol, rcol;
PPCODE:
    FIX_DIRTY_GRID(self);
    for (row=0; row<self->rows; row++) {
        for (lcol=0, rcol=self->columns-1; lcol<rcol; lcol++, rcol--) {
            SWAP(SV*, AvARRAY(self->grid)[lcol + row * self->columns],
                      AvARRAY(self->grid)[rcol + row * self->columns]);

Transform.xs  view on Meta::CPAN

PROTOTYPE: $
ALIAS:
    mirror_vertical = 1
PREINIT:
    IV col, trow, brow;
PPCODE:
    FIX_DIRTY_GRID(self);
    for (col=0; col<self->columns; col++) {
        for (trow=0, brow=self->rows-1; trow<brow; trow++, brow--) {
            SWAP(SV*, AvARRAY(self->grid)[col + trow * self->columns],
                      AvARRAY(self->grid)[col + brow * self->columns]);

Transform.xs  view on Meta::CPAN

    Grid::Transform self
PROTOTYPE: $
PREINIT:
    SV **tmp;
    IV n, i, row, col, h;
PPCODE:
    FIX_DIRTY_GRID(self);
    n = self->rows * self->columns;
    New(0, tmp, n, SV*);
    h = self->columns >> 1;
    for (i=0, row=0; row<self->rows; row++) {

Transform.xs  view on Meta::CPAN

    Grid::Transform self
PROTOTYPE: $
PREINIT:
    SV **tmp;
    IV n, i, row, col, h;
PPCODE:
    FIX_DIRTY_GRID(self);
    n = self->rows * self->columns;
    New(0, tmp, n, SV*);
    h = self->columns >> 1;
    for (i=0, row=0; row<self->rows; row++) {

Transform.xs  view on Meta::CPAN

PROTOTYPE: $
ALIAS:
    alt_row_dir = 1
PREINIT:
    IV row, lcol, rcol;
PPCODE:
    FIX_DIRTY_GRID(self);
    for (row=1; row<self->rows; row+=2) {
        for (lcol=0, rcol=self->columns-1; lcol<rcol; lcol++, rcol--) {
            SWAP(SV*, AvARRAY(self->grid)[lcol + row * self->columns],
                      AvARRAY(self->grid)[rcol + row * self->columns]);

Transform.xs  view on Meta::CPAN

    Grid::Transform self
PROTOTYPE: $
PREINIT:
    SV **tmp;
    IV n, i, idx, top, bottom, left, right;
PPCODE:
    FIX_DIRTY_GRID(self);
    n = self->rows * self->columns;
    New(0, tmp, n, SV*);
    idx = 0;
    top = 0;

 view all matches for this distribution


Gtk-Perl

 view release on metacpan or  search on metacpan

Bonobo/xs/BonoboControlFrame.xs  view on Meta::CPAN

	Gnome::BonoboControlFrame	control_frame

void
bonobo_control_frame_size_request (control_frame)
	Gnome::BonoboControlFrame	control_frame
	PPCODE:
	{
		int	desired_width, desired_height;
		bonobo_control_frame_size_request (control_frame, &desired_width, &desired_height);
		EXTEND(sp, 2);
		PUSHs(sv_2mortal(newSViv(desired_width)));

 view all matches for this distribution


Gtk

 view release on metacpan or  search on metacpan

GdkImlib.xs  view on Meta::CPAN


void
gdk_imlib_load_file_to_pixmap(Class, file)
	SV * Class
	char* file
	PPCODE:
	{
		GdkPixmap * result = 0;
		GdkBitmap * mask = 0;
		int ret;
		ret = gdk_imlib_load_file_to_pixmap(file, &result, &mask);

GdkImlib.xs  view on Meta::CPAN

	RETVAL

void
gdk_imlib_data_to_pixmap(Class, data, ...)
	SV *	data
	PPCODE:
	{
		GdkPixmap * result = 0;
		GdkBitmap * mask = 0;
		int ret;
		char ** lines = (char**)malloc(sizeof(char*)*(items-1));

 view all matches for this distribution


Gtk2

 view release on metacpan or  search on metacpan

ChangeLog.pre-git  view on Meta::CPAN

	* t/GtkTreeView.t: Use true values to test functions that
	return/take a boolean.  Only test stuff inside the cell_data_func
	once.

	* xs/GtkClipboard.xs: Use void for the return value of
	wait_for_targets - it uses PPCODE.  Check targets for NULL instead
	of n_targets.

	* xs/GtkCalendar.xs
	* xs/GtkComboBox.xs: Mark ix as unused.

ChangeLog.pre-git  view on Meta::CPAN

2004/01/04 11:49 (-0500) rwmcfa1

	* xs/GdkWindow.xs: for some reason get_pointer was having issues with
	certian versions of perl/xsubpp. it seemed to be related to the both
	having a return value and having OUTLIST's. this implements it as a
	PPCODE section doing the same thing.

2004/01/04 02:50 (+0100) kaffeetisch

	* t/10.GtkProgressBar.t: Test get_orientation, get_fraction,
	[sg]et_text, and [sg]et_pulse_step.

ChangeLog.pre-git  view on Meta::CPAN

	xs/GtkColorSelection.xs, xs/GtkCurve.xs, xs/GtkEditable.xs,
	xs/GtkFileSelection.xs, xs/GtkIconFactory.xs, xs/GtkLabel.xs,
	xs/GtkRadioMenuItem.xs, xs/GtkSelection.xs, xs/GtkStock.xs,
	xs/GtkTextBuffer.xs, xs/GtkTreeModel.xs, xs/GtkTreeSortable.xs,
	xs/GtkTreeViewColumn.xs, xs/PangoLayout.xs, xs/PangoTabs.xs: apidoc
	added, almost all PPCODE xsubs now have it

	* xs/GtkTreeDnd.xs: gtk_tree_get_row_drag_data had the outlist params
	in the prototype. apidoc added, almost all PPCODE xsubs now have it

	* xs/GtkContainer.xs: PPCODE -> CODE, return was always void. apidoc
	added, almost all PPCODE xsubs now have it

	* xs/GdkSelection.xs: added a class parameter to
	gdk_selection_property_get. apidoc added, almost all PPCODE xsubs now
	have it

2003/11/17 16:27 (-0500) muppetman

	* xs/GdkPixbuf.xs: i borked the get_from_(drawable|image) xsubs...

ChangeLog.pre-git  view on Meta::CPAN


	* xs/GdkPixbuf.xs: formatting cleanup

	* xs/GdkWindow.xs: quited warning about invalid paramter type

	* xs/GtkIconFactory.xs: non-void paramter with PPCODE, fixed

	* xs/GtkTearoffMenuItem.xs: teamoff -> tearoff, big bug

	* xs/GtkTreeModel.xs: looking for -1 list terminator incorrectly,
	bug-fix

 view all matches for this distribution


( run in 1.980 second using v1.01-cache-2.11-cpan-71847e10f99 )