Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ FdPicFrame(3H) — Pixar HSI 1.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

fdgt(1)

fdsv(1)

libfdpicio(3H)

ChadAlloc(3H)

FdPicCreat(3H)

FDPICFRAME(3H)  —  Pixar Programmer’s Manual — libfdpicio

NAME

FdPicGetFrame− get pictures from frame buffer to fast-disk picture file
FdPicPutFrame− put pictures to frame buffer from fast-disk picture file

SYNOPSIS

#include <fdpicio.h>
#include <chad.h>

FdPicPutFrame(pdptr, fbptr, xoffset, yoffset, xmin, xmax, ymin, ymax, tile, channels, host)
PFILE ∗pdptr;
ChadFrame ∗fbptr;
int xoffset, yoffset, xmin, xmax, ymin, ymax;
int tile, channels, host;

FdPicGetFrame(pdptr, fbptr, xoffset, yoffset, host)
PFILE ∗pdptr;
ChadFrame ∗fbptr;
int xoffset, yoffset;
int host;

DESCRIPTION

FdPicGetFrame copies an image from Pixar frame buffer memory into a Fast-Disk picture file.  The picture file is described by a picture descriptor pointer, pdptr, which is usually obtained by calling FdPicCreat(3H). The attributes of the picture file (for example, its dimensions and storage format), are set before the call to FdPicCreat. Functions to set these parameters are described in FdPicCreat(3H). The rectangular window within the Pixar frame buffer memory from which the picture is copied is described by a ChadFrame pointer, fbptr, which is obtained by a call to ChadAlloc(3H). The origin of the picture is given by the point (xoffset, yoffset). The coordinates of this point are relative to the frame buffer window; that is, (0,0) is the upper-left hand corner. The size of the picture is determined by the picture dimensions in the picture file descriptor. The flag host is ignored. 

FdPicPutFrame copies an image stored in a Fast-Disk picture file into Pixar frame buffer memory.  A picture file descriptor, pdptr, corresponding to the already created picture file to be transferred, should be obtained using FdPicFind(3H). If tile is less than 0, all the tiles in the picture file are transferred; if it is greater than or equal to 0, only the corresponding numbered tile is copied.  A rectangular window in the frame buffer is described by a ChadFrame pointer, fbptr, which is obtained by calling ChadAlloc. A clipping rectangle can be specified by giving its X-range (xmin, ymin) and Y-range (ymin, ymax). The coordinates of the clipping rectangle are specified relative the the pixel window (so that (0,0) is the upper-left corner). If the point (xoffset, yoffset) equals (0,0), the picture is copied so that its upper left-hand corner is aligned with the frame buffer window’s upper left-hand corner. Positive X offsets move the picture to the right, and positive Y offsets move the picture down.  The arguments channels and host are ignored. 

RESTRICTIONS

In FdPicGetFrame, xoffset and yoffset must be multiples of 32. 

In FdPicPutFrame, xoffset, yoffset, xmin, and ymin must be multiples of 32, and xmax and ymax must be multiples of 32 plus 31 (i.e., xmax and ymax must be congruent to 31 mod 32). 

EXAMPLES

A simple code segment to copy a picture into the Pixar frame buffer might look something like this:

ChadAlloc(0, TB, &tbp, 0, 32, 24, FRAME, &fbp, &tbp,
          0, 1023, 0, 767, NIX);
pdptr = FdPicFind("reyes","r");
FdPicPutFrame(pdptr, fbp, 0, 0, 0, 1023, 0 767, -1, 0xF, 0);
FdPicClose(pdptr);

The code to store a picture from the Pixar frame buffer would look something like this (assuming the same ChadFrame as above):

FdPicSetPsize(picturewidth, pictureheight);
FdPicSetTsize(picturewidth, pictureheight);
FdPicSetPformat(pictureformat);
FdPicSetOffset(xmin, ymin);
pdptr = FdPicCreat(filename, mode);
FdPicGetFrame(pdptr, fbp, xmin, ymin, 0);
FdPicClose(pdptr);

LIBRARY

libfdpicio.a

SEE ALSO

fdgt(1), fdsv(1), libfdpicio(3H), ChadAlloc(3H), FdPicCreat(3H)

Release β  —  Last change: 6/22/89

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026