Subversion Repositories shark

Rev

Rev 2 | Blame | Compare with Previous | Last modification | View Log | RSS feed

/*
 * Copyright 1995, Brown University, Providence, RI
 *
 * Permission to use and modify this software and its documentation for
 * any purpose other than its incorporation into a commercial product is
 * hereby granted without fee.  Permission to copy and distribute this
 * software and its documentation only for non-commercial use is also
 * granted without fee, provided, however, that the above copyright notice
 * appear in all copies, that both that copyright notice and this permission
 * notice appear in supporting documentation, that the name of Brown
 * University not be used in advertising or publicity pertaining to
 * distribution of the software without specific, written prior permission,
 * and that the person doing the distribution notify Brown University of
 * such distributions outside of his or her organization. Brown University
 * makes no representations about the suitability of this software for
 * any purpose.  It is provided "as is" without express or implied warranty.
 * Brown University requests notification of any modifications to this
 * software or its documentation.
 *
 * Send the following redistribution information:
 *
 *      Name:
 *      Organization:
 *      Address (postal and/or electronic):
 *
 * To:
 *      Software Librarian
 *      Computer Science Department, Box 1910
 *      Brown University
 *      Providence, RI 02912
 *
 *              or
 *
 *      brusd@cs.brown.edu
 *
 * We will acknowledge all electronic notifications.
 */


#include <stdio.h>
#include <iostream.h>
#include "ANIMmpeg.H"

extern unsigned long wpixel[256];
//extern int quietFlag;

class ANIMdisplay {
public:
        //Constructor for first movie
        ANIMdisplay(ANIMbase *movie, char *displayName,
                    Boolean loopMovie=TRUE,
                    int allocateFrame=1, int starty=5);

        //Constructor for later movies
        ANIMdisplay(ANIMbase *movie, ANIMdisplay *lastMovie,
                    Boolean loopMovie=TRUE,
                    int allocateFrame=1);

        //Destructor
        ~ANIMdisplay();

        //Replace with a new movie
        void newMovie(const char * const movie);

        void display(char *frame=NULL);

        Boolean movieDone();
        ANIMbase *_movie;

private:
        ANIMdisplay& operator=(const ANIMdisplay& rhs); //disallow = operator
        void init_image(Boolean allocateFrame);
        void init(Boolean allocateFrame);

        XInfo xinfo;
        int largy, displayWidth;
        Boolean originalMovie,frameAllocated, loop, movieEnded;
        char *_displayName;
};