<!DOCTYPE html>

<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>Fl_RGB_Image Binding Map</title>
    <link href="map.css" rel="stylesheet">
  </head>

  <body>


<h2>Fl_RGB_Image Binding Map</h2>


<a href="index.html">Back to Index</a>


<table class="package">
  <tr><th colspan="2">Package name</th></tr>

  <tr>
    <td>Fl_RGB_Image</td>
    <td>FLTK.Images.RGB</td>
  </tr>

</table>



<table class="type">
  <tr><th colspan="2">Types</th></tr>

  <tr>
    <td>Fl_RGB_Image</td>
    <td>RGB_Image</td>
  </tr>

  <tr>
    <td>&nbsp;</td>
    <td>RGB_Image_Reference</td>
  </tr>

</table>



<table class="function">
  <tr><th colspan="2">Attributes</th></tr>

  <tr>
<td><pre>
int alloc_array;
</pre></td>
<td>Intentionally left unbound.</td>
  </tr>

  <tr>
<td><pre>
const uchar * array;
</pre></td>
<td><pre>
function Data_Size
       (This : in RGB_Image)
    return Natural;

function Get_Datum
       (This  : in RGB_Image;
        Place : in Positive)
    return Color_Component
with Pre => Place <= This.Data_Size;

procedure Set_Datum
       (This  : in out RGB_Image;
        Place : in     Positive;
        Value : in     Color_Component)
with Pre => Place <= This.Data_Size;

function Slice
       (This : in RGB_Image;
        Low  : in Positive;
        High : in Natural)
    return Color_Component_Array
with Pre => High <= This.Data_Size,
    Post => Slice'Result'Length = Integer'Max (0, High - Low + 1);

procedure Overwrite
       (This   : in out RGB_Image;
        Place  : in     Positive;
        Values : in     Color_Component_Array)
with Pre => Place + Values'Length - 1 <= This.Data_Size;

function All_Data
       (This : in RGB_Image)
    return Color_Component_Array
with Post => All_Data'Result'Length = This.Data_Size;
</pre></td>
  </tr>

</table>



<table class="function">
  <tr><th colspan="2">Constructors</th></tr>

  <tr>
<td><pre>
Fl_RGB_Image(const uchar *bits, int W, int H, int D=3, int LD=0);
</pre></td>
<td><pre>
function Create
       (Data          : in Color_Component_Array;
        Width, Height : in Natural;
        Depth         : in Natural := 3;
        Line_Size     : in Natural := 0)
    return RGB_Image
with Pre => (if Line_Size = 0
    then Data'Length = Width * Height * Depth
    else Data'Length = Line_Size * Height)
    and Data'Length <= Get_Max_Size;
</pre></td>
  </tr>

  <tr>
<td><pre>
Fl_RGB_Image(const Fl_Pixmap *pxm, Fl_Color bg=FL_GRAY);
</pre></td>
<td><pre>
function Create
       (Data       : in FLTK.Images.Pixmaps.Pixmap;
        Background : in Color := Background_Color)
    return RGB_Image;
</pre></td>
  </tr>

</table>



<table class="function">
  <tr><th colspan="2">Static Functions and Procedures</th></tr>

  <tr>
<td><pre>
static void max_size(size_t size);
</pre></td>
<td><pre>
procedure Set_Max_Size
       (Value : in Natural);
</pre></td>
  </tr>

  <tr>
<td><pre>
static size_t max_size();
</pre></td>
<td><pre>
function Get_Max_Size
    return Natural;
</pre></td>
  </tr>

</table>



<table class="function">
  <tr><th colspan="2">Functions and Procedures</th></tr>

  <tr>
<td><pre>
virtual void color_average(Fl_Color c, float i);
</pre></td>
<td><pre>
procedure Color_Average
       (This   : in out RGB_Image;
        Col    : in     Color;
        Amount : in     Blend);
</pre></td>
  </tr>

  <tr>
<td><pre>
virtual Fl_Image * copy(int W, int H);
</pre></td>
<td><pre>
function Copy
       (This          : in RGB_Image;
        Width, Height : in Natural)
    return RGB_Image'Class;
</pre></td>
  </tr>

  <tr>
<td><pre>
Fl_Image * copy();
</pre></td>
<td><pre>
function Copy
       (This : in RGB_Image)
    return RGB_Image'Class;
</pre></td>
  </tr>

  <tr>
<td><pre>
virtual void desaturate();
</pre></td>
<td><pre>
procedure Desaturate
       (This : in out RGB_Image);
</pre></td>
  </tr>

  <tr>
<td><pre>
virtual void draw(int X, int Y, int W, int H,
    int cx=0, int cy=0);
</pre></td>
<td><pre>
procedure Draw
       (This           : in RGB_Image;
        X, Y, W, H     : in Integer;
        Clip_X, Clip_Y : in Integer := 0);
</pre></td>
  </tr>

  <tr>
<td><pre>
void draw(int X, int Y);
</pre></td>
<td><pre>
procedure Draw
       (This : in RGB_Image;
        X, Y : in Integer);
</pre></td>
  </tr>

  <tr>
<td><pre>
virtual void label(Fl_Widget *w);
</pre></td>
<td>Marked as obsolete.</td>
  </tr>

  <tr>
<td><pre>
virtual void label(Fl_Menu_Item *m);
</pre></td>
<td>Marked as obsolete.</td>
  </tr>

  <tr>
<td><pre>
virtual void uncache();
</pre></td>
<td><pre>
procedure Uncache
       (This : in out RGB_Image);
</pre></td>
  </tr>

</table>


  </body>
</html>