Skip to content

AFNI/NIfTI Server

Sections
Personal tools
You are here: Home » AFNI » Documentation

Doxygen Source Code Documentation


Main Page   Alphabetical List   Data Structures   File List   Data Fields   Globals   Search  

mproto.h

Go to the documentation of this file.
00001 /*===========================================================================*
00002  * mproto.h                                                                  *
00003  *                                                                           *
00004  *      basically a lot of miscellaneous prototypes                          *
00005  *                                                                           *
00006  *===========================================================================*/
00007 
00008 /*
00009  * Copyright (c) 1995 The Regents of the University of California.
00010  * All rights reserved.
00011  *
00012  * Permission to use, copy, modify, and distribute this software and its
00013  * documentation for any purpose, without fee, and without written agreement is
00014  * hereby granted, provided that the above copyright notice and the following
00015  * two paragraphs appear in all copies of this software.
00016  *
00017  * IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR
00018  * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT
00019  * OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF
00020  * CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00021  *
00022  * THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES,
00023  * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
00024  * AND FITNESS FOR A PARTICULAR PURPOSE.  THE SOFTWARE PROVIDED HEREUNDER IS
00025  * ON AN "AS IS" BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATION TO
00026  * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
00027  */
00028 
00029 /*  
00030  *  $Header: /misc/elrond0/share/cvs/AFNI/src/mpeg_encodedir/headers/mproto.h,v 1.5 2004/04/02 15:12:41 rwcox Exp $
00031  *  $Log: mproto.h,v $
00032  *  Revision 1.5  2004/04/02 15:12:41  rwcox
00033  *  Cput
00034  *
00035  *  Revision 1.4  2004/02/05 21:32:23  rwcox
00036  *  Cput
00037  *
00038  *  Revision 1.3  2003/12/23 13:50:08  rwcox
00039  *  Cput
00040  *
00041  *  Revision 1.2  2003/12/03 14:46:15  rwcox
00042  *  Cput
00043  *
00044  *  Revision 1.1  2001/12/17 18:25:44  rwcox
00045  *  Cadd
00046  *
00047  * Revision 1.12  1995/03/29  20:14:29  smoot
00048  * deleted unneeded dct prototype
00049  *
00050  * Revision 1.11  1995/01/19  23:55:02  eyhung
00051  * Changed copyrights
00052  *
00053  * Revision 1.10  1995/01/16  06:20:10  eyhung
00054  * Changed ReadYUV to ReadEYUV
00055  *
00056  * Revision 1.9  1993/07/22  22:24:23  keving
00057  * nothing
00058  *
00059  * Revision 1.8  1993/07/09  00:17:23  keving
00060  * nothing
00061  *
00062  * Revision 1.7  1993/06/03  21:08:53  keving
00063  * nothing
00064  *
00065  * Revision 1.6  1993/02/24  19:13:33  keving
00066  * nothing
00067  *
00068  * Revision 1.5  1993/02/17  23:18:20  dwallach
00069  * checkin prior to keving's joining the project
00070  *
00071  * Revision 1.4  1993/01/18  10:20:02  dwallach
00072  * *** empty log message ***
00073  *
00074  * Revision 1.3  1993/01/18  10:17:29  dwallach
00075  * RCS headers installed, code indented uniformly
00076  *
00077  * Revision 1.3  1993/01/18  10:17:29  dwallach
00078  * RCS headers installed, code indented uniformly
00079  *
00080  */
00081 
00082 
00083 /*==============*
00084  * HEADER FILES *
00085  *==============*/
00086 
00087 #include "general.h"
00088 #include "ansi.h"
00089 #include "bitio.h"
00090 
00091 
00092 #define DCTSIZE2    DCTSIZE*DCTSIZE
00093 typedef short DCTELEM;
00094 typedef DCTELEM DCTBLOCK[DCTSIZE2];
00095 
00096 
00097 
00098 /*===============================*
00099  * EXTERNAL PROCEDURE prototypes *
00100  *===============================*/
00101 
00102 /*  
00103  *  from mbasic.c:
00104  */
00105 void mp_reset _ANSI_ARGS_((void));
00106 void mp_free _ANSI_ARGS_((MpegFrame *mf));
00107 MpegFrame *mp_new _ANSI_ARGS_((int fnumber, char type, MpegFrame *oldFrame));
00108 void mp_ycc_calc _ANSI_ARGS_((MpegFrame *mf));
00109 void mp_dct_blocks _ANSI_ARGS_((MpegFrame *mf));
00110 void    AllocDecoded _ANSI_ARGS_((MpegFrame *frame));
00111 
00112 /*  
00113  *  from moutput.c:
00114  */
00115 boolean mp_quant_zig_block _ANSI_ARGS_((Block in, FlatBlock out, int qscale, int iblock));
00116 void    UnQuantZig _ANSI_ARGS_((FlatBlock in, Block out, int qscale, boolean iblock));
00117 void mp_rle_huff_block _ANSI_ARGS_((FlatBlock in, BitBucket *out));
00118 void mp_rle_huff_pblock _ANSI_ARGS_((FlatBlock in, BitBucket *out));
00119 void mp_create_blocks _ANSI_ARGS_((MpegFrame *mf));
00120 
00121 
00122 
00123 
00124 void    ReadEYUV _ANSI_ARGS_((MpegFrame * mf, FILE *fpointer, int width,
00125                             int height));
00126 boolean ReadPPM _ANSI_ARGS_((MpegFrame *mf, FILE *fpointer));
00127 void PPMtoYCC _ANSI_ARGS_((MpegFrame * mf));
00128 
00129 void    MotionSearchPreComputation _ANSI_ARGS_((MpegFrame *frame));
00130 boolean PMotionSearch _ANSI_ARGS_((LumBlock currentBlock, MpegFrame *prev,
00131                                    int by, int bx, int *motionY, int *motionX));
00132 void    ComputeHalfPixelData _ANSI_ARGS_((MpegFrame *frame));
00133 void mp_validate_size _ANSI_ARGS_((int *x, int *y));
00134 void AllocYCC _ANSI_ARGS_((MpegFrame * mf));
00135 
00136 
00137 /* jrevdct.c */
00138 void init_pre_idct _ANSI_ARGS_((void ));
00139 void j_rev_dct_sparse _ANSI_ARGS_((DCTBLOCK data , int pos ));
00140 void j_rev_dct _ANSI_ARGS_((DCTBLOCK data ));
00141 void j_rev_dct_sparse _ANSI_ARGS_((DCTBLOCK data , int pos ));
00142 void j_rev_dct _ANSI_ARGS_((DCTBLOCK data ));
00143 
00144 /* block.c */
00145 void    BlockToData _ANSI_ARGS_((uint8 **data, Block block, int by, int bx));
00146 void    AddMotionBlock _ANSI_ARGS_((Block block, uint8 **prev, int by, int bx,
00147                        int my, int mx));
 

Powered by Plone

This site conforms to the following standards: