Main Page | Class Hierarchy | Alphabetical List | Data Structures | File List | Data Fields | Globals | Related Pages | Examples

vetPlainFrameGenerator.h

00001 
00028 #ifndef __VETLIB_VETPLAINFRAMEGENERATOR_H__
00029  #define __VETLIB_VETPLAINFRAMEGENERATOR_H__
00030 
00031  #include "../vetDefs.h"
00032  #include "../vetInput.h"
00033 
00034  #include "../vetFrameYUV420.h"
00035  #include "../vetFrameRGB24.h"
00036  #include "../vetFrameT.h"
00037  #include "../vetFrameGrey.h"
00038 
00039  #define VETPFG_DEF_COLOR_GREY  0 //  black
00040  #define VETPFG_DEF_COLOR_R             0 // |
00041  #define VETPFG_DEF_COLOR_G             0 // |>black
00042  #define VETPFG_DEF_COLOR_B             0 // |
00043  #define VETPFG_DEF_COLOR_Y             0 // |
00044  #define VETPFG_DEF_COLOR_U             0 // |>black
00045  #define VETPFG_DEF_COLOR_V             0 // |
00046 
00047 
00048 
00049 class vetPlainFrameGenerator : public vetInput
00050  {
00051 
00052  protected:
00053 
00057                 vetFrameYUV420* bufferYUV;
00058 
00062                 vetFrameRGB24* bufferRGB;
00063 
00067                 vetFrameT<unsigned char>* bufferTuC;
00068 
00069 
00070 
00071                 void releaseBuffers();
00072 
00073  public:
00074 
00081                 vetPlainFrameGenerator(float fps = 0);
00082 
00090                 vetPlainFrameGenerator(PixelRGB96& background, float fps = 0);
00091 
00099                 vetPlainFrameGenerator(PixelGrey& background, float fps = 0);
00100 
00101 
00102 
00103 
00104                 ~vetPlainFrameGenerator();
00105 
00106 
00107 
00108 
00112                 VETRESULT reset();
00113 
00114 
00115 
00116 
00117 
00123                 void useBufferYUV(unsigned int width, unsigned int height);
00124 
00130                 void useBufferRGB(unsigned int width, unsigned int height);
00131 
00137                 void useBufferTuC(unsigned int width, unsigned int height, vetFrame::VETFRAME_PROFILE profile);
00138 
00144                 bool isBufferYUV() { if ( bufferYUV != NULL ) return true; return false; };
00145 
00151                 bool isBufferRGB() { if ( bufferRGB != NULL ) return true; return false; };
00152 
00158                 bool isBufferTuC() { if ( bufferTuC != NULL ) return true; return false; };
00159 
00160 
00161 
00162 
00163 
00164 
00165 
00171 //              void setFrameColor(PixelRGB96& background) { bgRGB = background; };
00172 
00178 //              void getFrameColor(PixelRGB96& background) { background = bgRGB; };
00179 
00180 
00186 //              void setFrameColor(PixelGrey& background) { bgGrey = background; };
00187 
00193 //              void getFrameColor(PixelGrey& background) const { background = bgGrey; };
00194 
00195 
00196 
00197 
00198 
00204                 VETRESULT setHeight(unsigned int value);
00205 
00211                 VETRESULT setWidth(unsigned int value);
00212 
00213 
00214 
00215                 unsigned int getWidth() const;
00216 
00217                 unsigned int getHeight() const;
00218 
00219 
00225                 bool EoF() { return false; };
00226 
00238                 VETRESULT extractTo(vetFrameYUV420& img);
00239 
00251                 VETRESULT extractTo(vetFrameRGB24& img);
00252 
00264                 VETRESULT extractTo(vetFrameT<unsigned char>& img);
00265 
00266 };
00267 
00268 
00269 #endif  //__VETLIB_VETPLAINFRAMEGENERATOR_H__

Generated on Tue Jan 24 11:59:05 2006 for VETLib by  doxygen 1.4.4