DlgCoding.h
上传用户:wangchdtw
上传日期:2014-04-02
资源大小:329k
文件大小:4k
源码类别:

波变换

开发平台:

Visual C++

  1. #if !defined(AFX_CDLGCODINGHUFFMAN_H__B7F7D45E_7936_4F76_9142_2F114477725B__INCLUDED_)
  2. #define AFX_CDLGCODINGHUFFMAN_H__B7F7D45E_7936_4F76_9142_2F114477725B__INCLUDED_
  3. #if _MSC_VER > 1000
  4. #pragma once
  5. #endif // _MSC_VER > 1000
  6. /////////////////////////////////////////////////////////////////////////////
  7. // CDlgHuffman dialog
  8. class CDlgHuffman : public CDialog
  9. {
  10. // Construction
  11. public:
  12. // 灰度级(256)
  13. int nColorNum;
  14. // 灰度值出现概率
  15. double *  dProba;
  16. // 哈夫曼码表
  17. CString * m_strCode;
  18. CDlgHuffman(CWnd* pParent = NULL);   // standard constructor
  19. // Dialog Data
  20. //{{AFX_DATA(CDlgHuffman)
  21. enum { IDD = IDD_CODING_HUFFMAN };
  22. CListCtrl m_lstTable;
  23. double m_dEntropy;
  24. double m_dCodLength;
  25. double m_dRatio;
  26. //}}AFX_DATA
  27. // Overrides
  28. // ClassWizard generated virtual function overrides
  29. //{{AFX_VIRTUAL(CDlgHuffman)
  30. protected:
  31. virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
  32. //}}AFX_VIRTUAL
  33. // Implementation
  34. protected:
  35. // Generated message map functions
  36. //{{AFX_MSG(CDlgHuffman)
  37. virtual BOOL OnInitDialog();
  38. //}}AFX_MSG
  39. DECLARE_MESSAGE_MAP()
  40. };
  41. /////////////////////////////////////////////////////////////////////////////
  42. // CDlgShannon dialog
  43. class CDlgShannon : public CDialog
  44. {
  45. // Construction
  46. public:
  47. // 灰度级别数目
  48. int m_nColorNum;
  49. // 各个灰度值出现频率
  50. double * m_dProba;
  51. // 香农-弗诺编码表
  52. CString * m_strCode;
  53. CDlgShannon(CWnd* pParent = NULL);   // standard constructor
  54. // Dialog Data
  55. //{{AFX_DATA(CDlgShannon)
  56. enum { IDD = IDD_CODING_SHANFINO };
  57. CListCtrl m_lstTable;
  58. double m_dEntropy;
  59. double m_dCodLength;
  60. double m_dRatio;
  61. double m_dAvgCodeLen;
  62. double m_dEfficiency;
  63. //}}AFX_DATA
  64. // Overrides
  65. // ClassWizard generated virtual function overrides
  66. //{{AFX_VIRTUAL(CDlgShannon)
  67. protected:
  68. virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
  69. //}}AFX_VIRTUAL
  70. // Implementation
  71. protected:
  72. // Generated message map functions
  73. //{{AFX_MSG(CDlgShannon)
  74. virtual BOOL OnInitDialog();
  75. //}}AFX_MSG
  76. DECLARE_MESSAGE_MAP()
  77. };
  78. /////////////////////////////////////////////////////////////////////////////
  79. // CDlgArith dialog
  80. class CDlgArith : public CDialog
  81. {
  82. // Construction
  83. public:
  84. CDlgArith(CWnd* pParent = NULL);   // standard constructor
  85. // Dialog Data
  86. //{{AFX_DATA(CDlgArith)
  87. enum { IDD = IDD_CODING_ARITH };
  88. CButton m_decoding;
  89. CButton m_coding;
  90. CEdit m_ConArithSer;
  91. CString m_ArithSerial;
  92. CString m_ArithOutput;
  93. CString m_ArithDecode;
  94. //}}AFX_DATA
  95. // Overrides
  96. // ClassWizard generated virtual function overrides
  97. //{{AFX_VIRTUAL(CDlgArith)
  98. protected:
  99. virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
  100. //}}AFX_VIRTUAL
  101. // Implementation
  102. protected:
  103. // Generated message map functions
  104. //{{AFX_MSG(CDlgArith)
  105. afx_msg void OnCoding();
  106. afx_msg void OnDecoding();
  107. //}}AFX_MSG
  108. DECLARE_MESSAGE_MAP()
  109. };
  110. /////////////////////////////////////////////////////////////////////////////
  111. // CDlgBitPlane dialog
  112. class CDlgBitPlane : public CDialog
  113. {
  114. // Construction
  115. public:
  116. CDlgBitPlane(CWnd* pParent = NULL);   // standard constructor
  117. // Dialog Data
  118. //{{AFX_DATA(CDlgBitPlane)
  119. enum { IDD = IDD_CODING_BITPLANE };
  120. BYTE m_BItNumber;
  121. //}}AFX_DATA
  122. // Overrides
  123. // ClassWizard generated virtual function overrides
  124. //{{AFX_VIRTUAL(CDlgBitPlane)
  125. protected:
  126. virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
  127. //}}AFX_VIRTUAL
  128. // Implementation
  129. protected:
  130. // Generated message map functions
  131. //{{AFX_MSG(CDlgBitPlane)
  132. virtual void OnOK();
  133. //}}AFX_MSG
  134. DECLARE_MESSAGE_MAP()
  135. };
  136. //{{AFX_INSERT_LOCATION}}
  137. // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
  138. #endif // !defined(AFX_CDLGCODINGHUFFMAN_H__B7F7D45E_7936_4F76_9142_2F114477725B__INCLUDED_)