PDL-Graphics-PLplot

 view release on metacpan or  search on metacpan

plplot.pd  view on Meta::CPAN

#define PLPTR_RECEIVE_IN(t, v, v_in) t *v = (t *)v_in;
#define PLPTR_RECEIVE_SV(v) ((PLPointer) (SvROK(v) ? SvIV((SV*)SvRV(v)) : (IV)NULL))
EOH

# The create_low_level_constants function is used to make the #define'd
# constants in plplot.h available in Perl in the form of functions.  It
# should be then possible to write code like this:
#
#    plParseOpts (\@ARGV, PL_PARSE_SKIP | PL_PARSE_NOPROGRAM);

sub create_low_level_constants {
  my $defn = shift;
  my @lines = split (/\n/, $defn);

  foreach my $line (@lines) {
    next if (($line =~ /^\#/) or ($line =~ /^\s*$/));
    foreach my $const ($line =~ /([^\s]+)/g) {
      my $func = <<"EOC";
int
$const()
PROTOTYPE:
CODE:
  RETVAL = $const;
OUTPUT:
  RETVAL
EOC
    pp_addxs ($func);
    pp_add_exported ($const);
    }
  }
}

create_low_level_constants (<<'EODEF');

# Definitions used in plParseOpts

PL_PARSE_PARTIAL
PL_PARSE_FULL
PL_PARSE_QUIET
PL_PARSE_NODELETE
PL_PARSE_SHOWALL
PL_PARSE_OVERRIDE
PL_PARSE_NOPROGRAM
PL_PARSE_NODASH
PL_PARSE_SKIP

# Macro used (in some cases) to ignore value of argument

PL_NOTSET

# Definitions for plmesh and plsurf3d

DRAW_LINEX
DRAW_LINEY
DRAW_LINEXY
MAG_COLOR
BASE_CONT
TOP_CONT
SURF_CONT
DRAW_SIDES
FACETED
MESH

# fonts

PL_FCI_SANS
PL_FCI_MONO

# Input event (especially keyboard) definitions for use from plplot
# event handlers.

PLK_BackSpace PLK_Tab PLK_Linefeed PLK_Return PLK_Escape PLK_Delete
PLK_Clear PLK_Pause PLK_Scroll_Lock PLK_Home PLK_Left PLK_Up PLK_Right
PLK_Down PLK_Prior PLK_Next PLK_End PLK_Begin PLK_Select PLK_Print
PLK_Execute PLK_Insert PLK_Undo PLK_Redo PLK_Menu PLK_Find PLK_Cancel
PLK_Help PLK_Break PLK_Mode_switch PLK_script_switch PLK_Num_Lock
PLK_KP_Space PLK_KP_Tab PLK_KP_Enter PLK_KP_F1 PLK_KP_F2 PLK_KP_F3
PLK_KP_F4 PLK_KP_Equal PLK_KP_Multiply PLK_KP_Add PLK_KP_Separator
PLK_KP_Subtract PLK_KP_Decimal PLK_KP_Divide PLK_KP_0 PLK_KP_1
PLK_KP_2 PLK_KP_3 PLK_KP_4 PLK_KP_5 PLK_KP_6 PLK_KP_7 PLK_KP_8
PLK_KP_9 PLK_F1 PLK_F2 PLK_F3 PLK_F4 PLK_F5 PLK_F6 PLK_F7 PLK_F8
PLK_F9 PLK_F10 PLK_F11 PLK_L1 PLK_F12 PLK_L2 PLK_F13 PLK_L3 PLK_F14
PLK_L4 PLK_F15 PLK_L5 PLK_F16 PLK_L6 PLK_F17 PLK_L7 PLK_F18 PLK_L8
PLK_F19 PLK_L9 PLK_F20 PLK_L10 PLK_F21 PLK_R1 PLK_F22 PLK_R2 PLK_F23
PLK_R3 PLK_F24 PLK_R4 PLK_F25 PLK_R5 PLK_F26 PLK_R6 PLK_F27 PLK_R7
PLK_F28 PLK_R8 PLK_F29 PLK_R9 PLK_F30 PLK_R10 PLK_F31 PLK_R11 PLK_F32
PLK_R12 PLK_R13 PLK_F33 PLK_F34 PLK_R14 PLK_F35 PLK_R15 PLK_Shift_L
PLK_Shift_R PLK_Control_L PLK_Control_R PLK_Caps_Lock PLK_Shift_Lock
PLK_Meta_L PLK_Meta_R PLK_Alt_L PLK_Alt_R PLK_Super_L PLK_Super_R
PLK_Hyper_L PLK_Hyper_R

# Type of gridding algorithm for plgriddata ()

GRID_CSA
GRID_DTLI
GRID_NNI
GRID_NNIDW
GRID_NNLI
GRID_NNAIDW

EODEF

create_low_level_constants (<<'EODEF');

# Definitions for plslabelfunc

PL_X_AXIS
PL_Y_AXIS
PL_Z_AXIS

# Definitions for colorbar

PL_COLORBAR_SHADE
PL_COLORBAR_SHADE_LABEL
PL_COLORBAR_IMAGE
PL_COLORBAR_GRADIENT
PL_COLORBAR_CAP_NONE
PL_COLORBAR_CAP_LOW
PL_COLORBAR_CAP_HIGH
PL_COLORBAR_LABEL_LEFT
PL_COLORBAR_LABEL_RIGHT



( run in 0.979 second using v1.01-cache-2.11-cpan-63c85eba8c4 )