Main Page | Namespace List | Compound List | File List | Compound Members | File Members

jpeg.h

Go to the documentation of this file.
00001 /*--------------------------------------------------------------------
00002  *
00003  * (C) Copyright Koninklijke Philips Electronics NV 2006. 
00004  * All rights reserved. This software is licensed under the terms of
00005  * version 2.1 of the GNU Lesser General Public License as published 
00006  * by the Free Software Foundation. For licensing and warranty
00007  * information, see the file COPYING in the main directory.
00008  *
00009  *------------------------------------------------------------------*/
00010 
00011 #ifndef JPEG_H
00012 #define JPEG_H
00013 
00014 #include "yapi.h"
00015 #include "vya.h"
00016 #include "bytestreamfe.h"
00017 #include "bytestream_env.h"
00018 #include "bytestream_usr.h"
00019 #include "pfspdbe.h"
00020 #include "pfspd_env.h"
00021 #include "pfspd_usr.h"
00022 #include "jpegdec.h"
00023 #include "vhs3c.h"
00024 #include "scaling_env.h"
00025 #include "scaling_usr.h"
00026 #include "matrix.h"
00027 
00028 class JPEG : public ProcessNetwork
00029 {
00030 public:
00031   // constructor
00032   JPEG(
00033     const Id& n,
00034     char* fefile,
00035     char* scfile,
00036     char* befile
00037   );
00038 
00039   // type member function
00040   const char* type() const { return "JPEG"; }
00041 
00042 private:
00043   // Fifos
00044   Fifo<unsigned char>     byteStream;  
00045   Fifo<VYApixel>          Y;
00046   Fifo<VYApixel>          U;
00047   Fifo<VYApixel>          V;
00048   Fifo<VYAimageWidth>     YimgWidth;
00049   Fifo<VYAimageHeight>    YimgHeight;
00050   Fifo<VYAimageWidth>     UVimgWidth;
00051   Fifo<VYAimageHeight>    UVimgHeight;
00052   Fifo<VYAimageType>      YUVimgType;
00053 
00054   Fifo<scaling_args_t>    scalingArgs;
00055   Fifo<VYAimageWidth>     YimgWidthOut;
00056   Fifo<VYAimageHeight>    YimgHeightOut;
00057   Fifo<VYAimageWidth>     UVimgWidthOut;
00058   Fifo<VYAimageHeight>    UVimgHeightOut;
00059 
00060   Fifo<VYApixel>          Yscaled;
00061   Fifo<VYApixel>          Uscaled;
00062   Fifo<VYApixel>          Vscaled;
00063 
00064   Fifo<VYApixel>          R;
00065   Fifo<VYApixel>          G;
00066   Fifo<VYApixel>          B;
00067 
00068   Fifo<byteStream_args_t> argumentsIn;
00069   Fifo<VYAfileName>       fileNameIn;
00070   Fifo<int>               nrBytesIn;
00071 
00072   Fifo<pfspd_args_t>      argumentsOut;
00073   Fifo<VYAfileName>       fileNameOut;
00074   Fifo<pT_header>         seqInfoOut;
00075   
00076   // Processes and Networks
00077   byteStreamFE            frontEnd;
00078   JPEGDecode              jpegDecode;
00079   VHS3C                   scale;
00080   Matrix                  matrix;
00081   pfspdBE                 backEnd;
00082   
00083   byteStreamEnv           frontEndEnv;
00084   byteStreamUsr           frontEndUsr;
00085   pfspdEnv                backEndEnv;
00086   pfspdUsr                backEndUsr;
00087   ScalingEnv              scalingEnv;
00088   ScalingUsr              scalingUsr;
00089 };
00090 
00091 #endif

Generated on Wed Feb 15 14:52:45 2006 for jpegdec by doxygen 1.3.2