BaseJpegDeocde exampe program
Dependencies: BaseJpegDecode Terminal BaseUsbHost mbed mbed-rtos
Fork of BaseJpegDecode by
SimpleJpegDecode.h
- Committer:
- va009039
- Date:
- 2012-10-30
- Revision:
- 4:7d88de31c55a
- Child:
- 5:033432f9baf3
File content as of revision 4:7d88de31c55a:
#ifndef SIMPLE_JPEG_DECODE_H #define SIMPLE_JPEG_DECODE_H #include "BaseJpegDecode.h" #include "inverseDCT.h" class SimpleJpegDecode : public BaseJpegDecode, public inverseDCT { public: SimpleJpegDecode(); void output(int mcu, int block, int scan, int value); virtual void outputDC(int mcu, int block, int value); virtual void outputAC(int mcu, int block, int scan, int value); virtual void outputMARK(uint8_t c); virtual void outputBLOCK(int muc, int block, uint8_t* values); // iDCT uint8_t* m_block_data[6]; int DC_count; int AC_count; int BLOCK_count; ///Setups the result callback /** @param pMethod : callback function */ void setOnResult( void (*pMethod)(int, int, uint8_t*) ); ///Setups the result callback /** @param pItem : instance of class on which to execute the callback method @param pMethod : callback method */ class CDummy; template<class T> void setOnResult( T* pItem, void (T::*pMethod)(int, int, uint8_t*) ) { m_pCb = NULL; m_pCbItem = (CDummy*) pItem; m_pCbMeth = (void (CDummy::*)(int, int, uint8_t*)) pMethod; } void clearOnResult(); protected: void onResult(int x, int y, uint8_t* yuv); CDummy* m_pCbItem; void (CDummy::*m_pCbMeth)(int, int, uint8_t*); void (*m_pCb)(int, int, uint8_t*); }; #endif // SIMPLE_JPEG_DECODE_H