00001 /* 00002 // 00003 // INTEL CORPORATION PROPRIETARY INFORMATION 00004 // This software is supplied under the terms of a license agreement or 00005 // nondisclosure agreement with Intel Corporation and may not be copied 00006 // or disclosed except in accordance with the terms of that agreement. 00007 // Copyright (c) 2001-2004 Intel Corporation. All Rights Reserved. 00008 // 00009 // Intel® Integrated Performance Primitives JPEG Viewer Sample for Windows* 00010 // 00011 // By downloading and installing this sample, you hereby agree that the 00012 // accompanying Materials are being provided to you under the terms and 00013 // conditions of the End User License Agreement for the Intel® Integrated 00014 // Performance Primitives product previously accepted by you. Please refer 00015 // to the file ipplic.htm located in the root directory of your Intel® IPP product 00016 // installation for more information. 00017 // 00018 // JPEG is an international standard promoted by ISO/IEC and other organizations. 00019 // Implementations of these standards, or the standard enabled platforms may 00020 // require licenses from various entities, including Intel Corporation. 00021 // 00022 // 00023 */ 00024 00025 #ifndef __ENCHTBL_H__ 00026 #define __ENCHTBL_H__ 00027 00028 #ifndef __IPPJ_H__ 00029 #include "ippj.h" 00030 #endif 00031 #ifndef __JPEGBASE_H__ 00032 #include "jpegbase.h" 00033 #endif 00034 00035 00036 00037 00038 class CJPEGEncoderHuffmanTable 00039 { 00040 private: 00041 IppiEncodeHuffmanSpec* m_table; 00042 00043 public: 00044 int m_id; 00045 int m_hclass; 00046 Ipp8u m_bits[16]; 00047 Ipp8u m_vals[256]; 00048 00049 CJPEGEncoderHuffmanTable(void); 00050 virtual ~CJPEGEncoderHuffmanTable(void); 00051 00052 JERRCODE Create(void); 00053 JERRCODE Destroy(void); 00054 JERRCODE Init(int id,int hclass,Ipp8u* bits,Ipp8u* vals); 00055 00056 operator IppiEncodeHuffmanSpec*(void) { return m_table; } 00057 }; 00058 00059 00060 class CJPEGEncoderHuffmanState 00061 { 00062 private: 00063 IppiEncodeHuffmanState* m_state; 00064 00065 public: 00066 CJPEGEncoderHuffmanState(void); 00067 virtual ~CJPEGEncoderHuffmanState(void); 00068 00069 JERRCODE Create(void); 00070 JERRCODE Destroy(void); 00071 JERRCODE Init(void); 00072 00073 operator IppiEncodeHuffmanState*(void) { return m_state; } 00074 }; 00075 00076 00077 #endif // __ENCHTBL_H__ 00078 00079