/*
static char *sid_xvideo_c = "@(#)xvideo.c	1.3 8/7/88 Parallax Graphics Inc";
"$Header: VVideo.h,v 1.4 89/02/07 15:19:01 kit Exp $";
"$Athena: VVideo.h,v 1.4 89/02/07 15:19:01 kit Exp $";
*/

/*  This is the video widget, Used for displaying live video into an
 *  X window.
 *
 *	Created: 	8/19/88
 *	By:		Chris D. Peterson
 *                      MIT - Project Athena
 *
 *      $Source: /mit/vtk/Video/RCS/VVideo.h,v $
 *      $Author: kit $
 *      $Header: VVideo.h,v 1.4 89/02/07 15:19:01 kit Exp $
 *	
 */

/*
 * Copyright 1988 by the Massachusetts Institute of Technology
 * 
 * Permission to use, copy, modify, and distribute this
 * software and its documentation for any purpose and without
 * fee is hereby granted, provided that the above copyright
 * notice appear in all copies and that both that copyright
 * notice and this permission notice appear in supporting
 * documentation, and that the name of M.I.T. not be used in
 * advertising or publicity pertaining to distribution of the
 * software without specific, written prior permission.
 * M.I.T. makes no representations about the suitability of
 * this software for any purpose.  It is provided "as is"
 * without express or implied warranty.
 */
 
/*   Copyright (c) 1988 by
 *   PARALLAX GRAPHICS, INCORPORATED, Santa Clara, California.
 *
 *   This software is furnished on an as-is basis, and may be used and copied
 *   only with the inclusion of the above copyright notice.
 *
 *   The information in this software is subject to change without notice.
 *   No committment is made as to the usability or reliability of this
 *   software.
 *
 *   Parallax Graphics, Inc.
 *   2500 Condensa Street
 *   Santa Clara, California  95051
 */

#ifndef _XtVVideo_h
#define _XtVVideo_h

/***********************************************************************
 *
 * Video Widget
 *
 ***********************************************************************/

#include <X11/Simple.h>

/* Resources:

 Name		     Class		RepType		Default Value
 ----		     -----		-------		-------------
 background	     Background		pixel		White
 border		     BorderColor	pixel		Black
 borderWidth	     BorderWidth	int		1
 height		     Height		int		482
 width		     Width		int		640
 x		     Position		int		0
 y		     Position		int		0
 destroyCallback     Callback		Pointer		NULL
 mappedWhenManaged   MappedWhenManaged	Boolean		True

 cursor		     Cursor		Cursor		None
 sensitive	     Sensitive		Boolean		True
 insensitiveBorder   Insensitive	Pixmap		Gray

 videoMode           VideoMode          VideoMode       still.
*/

#ifndef _XtVideoMode_e
#define _XtVideoMode_e

typedef enum {
    XtVideoStill,       /* justify text to left side of button   */
    XtVideoScaled,     /* justify text in center of button      */
    XtVideoLive       /* justify text to right side of button  */
} XtVideoMode;
#endif _XtVideoMode_e

#define XtNvideoMode		"videoMode"
#define XtCVideoMode            "VideoMode"
 
/* Class record constants */

extern WidgetClass videoWidgetClass;

typedef struct _VideoClassRec *VideoWidgetClass;
typedef struct _VideoRec      *VideoWidget;

/*
 * Exported Functions 
 */

/*	Function Name: XtGrabVideoFrame.
 *	Description: Grabs another frame of still or scaled video.
 *	Arguments: w - the video widget.
 *	Returns: none.
 */

extern void XtGrabVideoFrame();
/* Widget w; */


/*	Function Name: XtSetVideoMode.
 *	Description: Allows applications to easily change the video mode.
 *	Arguments: w - the video widget.
 *                 mode - the new mode for this widget.
 *	Returns: none.
 *      NOTE:    This functionality can be had via set values.
 */

extern void XtSetVideoMode();
/*
Widget w;
XtVideoMode mode;
*/

#endif _XtVVideo_h
/* DON'T ADD STUFF AFTER THIS #endif */
