#include <iMJ2Dec.h>
Inheritance diagram for CMJ2DecT:


Public Member Functions | |
| CMJ2DecT (BOOL bInterlaced, DWORD dwIdealProcessor, const GUID *pOEM_LIC) | |
| Constructor. | |
| ~CMJ2DecT () | |
| Destructor. | |
| virtual int | prepare (JPEG2000INFOHEADER2 *jp2, int argc, char **argv, BYTE *in, int in_size, int in_width, int in_height, DWORD in_fcc, int in_bits, BYTE *out, int out_size, int out_ofs, int out_row, int out_width, int out_height, DWORD out_fcc, int out_bits) |
| Prepare decoding. | |
| virtual HANDLE | start () |
| Create the thread and start it. | |
| virtual int | sync () |
| Wait for completion of the threaded decoding. | |
Protected Member Functions | |
| virtual int | decode (JPEG2000INFOHEADER2 *jp2, int argc, char **argv, BYTE *in, int in_size, int in_width, int in_height, DWORD in_fcc, int in_bits, BYTE *out, int out_size, int out_ofs, int out_row, int out_width, int out_height, DWORD out_fcc, int out_bits) |
| Decode one frame or field in the thread created by start(). | |
Protected Attributes | |
| PSetThreadIdealProcessor | m_pSetThreadIdealProcessor |
| HANDLE | m_hThread |
| Thread handle. | |
| HANDLE | m_hEvent |
| Completion event. | |
| DWORD | m_dwIdealProcessor |
| Store dwIdealProcessor passed to constructor CMJ2DecT(). | |
| DWORD | m_read_size |
| Decoded field or frame size. | |
| DECODE_PARAM | m_dp |
| Decoding parameters. | |
Private Member Functions | |
| void | decodeT () |
| Instanciated thread method. | |
Static Private Member Functions | |
| static void __cdecl | decodeT (void *param) |
| Static thread function, it calls instanciated thread method (see below). | |
Related Functions | |
| (Note that these are not member functions.) | |
| typedef WINBASEAPI DWORD(WINAPI * | PSetThreadIdealProcessor )(HANDLE hThread, DWORD dwIdealProcessor) |
| Windows' SetThreadIdealProcessor() function pointer type. | |
This class decodes a single frame or field on a thread it creates. It tries to run this thread on a the ideal CPU passed to its constructor.
The calling sequence is :
|
||||||||||||||||
|
Constructor.
|
|
|
Destructor.
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Prepare decoding.
|
|
|
Create the thread and start it.
Create the decoding thread. Run the thread on the CPU specified by m_dwIdealProcessor. |
Here is the call graph for this function:

|
|
Wait for completion of the threaded decoding.
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Decode one frame or field in the thread created by start().
The size in bytes of the field or frame decoded is stored in m_read_size. Set the completion event. Self-destroy the thread.
Reimplemented from IMJ2Dec. |
Here is the call graph for this function:

|
|
Static thread function, it calls instanciated thread method (see below).
|
|
|
Instanciated thread method. It calls decode(). |
Here is the call graph for this function:

|
|
Windows' SetThreadIdealProcessor() function pointer type. Used to dynamically link to SetThreadIdealProcessor() using GetProcAddress() because SetThreadIdealProcessor() isn't available in Win9x/me. |
|
|
|
|
|
Thread handle.
|
|
|
Completion event.
|
|
|
Store dwIdealProcessor passed to constructor CMJ2DecT().
|
|
|
Decoded field or frame size.
|
|
|
Decoding parameters.
|
|
© Morgan Multimedia 1990-2005 |