亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? pagee.cpp

?? reed solomon編碼/解碼工具
?? CPP
字號(hào):
// PageE.cpp : implementation file
//

#include "stdafx.h"
#include "dlg.h"
#include "PageE.h"
#include "common.h"
#include "RScode.cpp"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

extern Mapping errors,erasures;
extern int parityNum;
extern CString msg;
extern unsigned char message[msgLEN], code[codeLEN];
/////////////////////////////////////////////////////////////////////////////
// CPageE dialog


CPageE::CPageE(CWnd* pParent /*=NULL*/)
	: CDialog(CPageE::IDD, pParent)
{
	//{{AFX_DATA_INIT(CPageE)
	//}}AFX_DATA_INIT
	checked1 = FALSE;
	checked2 = FALSE;
}


void CPageE::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CPageE)
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CPageE, CDialog)
	//{{AFX_MSG_MAP(CPageE)
	ON_BN_CLICKED(IDC_BUTTON_ADD1, OnButtonAdd1)
	ON_BN_CLICKED(IDC_BUTTON_DEL1, OnButtonDel1)
	ON_BN_CLICKED(IDC_CHECK1, OnCheck1)
	ON_BN_CLICKED(IDC_BUTTON_ADD2, OnButtonAdd2)
	ON_BN_CLICKED(IDC_BUTTON_DEL2, OnButtonDel2)
	ON_BN_CLICKED(IDC_CHECK2, OnCheck2)
	ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CPageE message handlers

BOOL CPageE::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
	CRect rc(0, 0, 0, 0);
	
	GetParent()->GetClientRect(&rc);
	((CTabCtrl*)GetParent())->AdjustRect(false, &rc); 
	
	MoveWindow(&rc);
	ShowText();
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

void CPageE::OnButtonAdd1() 
{
	// TODO: Add your control notification handler code here
	if (!checked1) {
		return;
	}
	CListBox * pLB=(CListBox*)this->GetDlgItem(IDC_LIST1);
	CEdit * pEd_pos=(CEdit *)this->GetDlgItem(IDC_EDIT_P1);
	CEdit * pEd_data=(CEdit *)this->GetDlgItem(IDC_EDIT_D1);
	CString str1, str2;
	pEd_pos->GetWindowText(str1);	
    int key = atoi(LPCTSTR(str1));
	if (errors.exist(key)) {
		this->MessageBox("This error has already been imported.", NULL, MB_ICONEXCLAMATION | MB_ICONWARNING);
		return;
	}
	if (key > msg.GetLength() || key <= 0) {
		this->MessageBox("This error position is abnormal.", NULL, MB_ICONEXCLAMATION | MB_ICONWARNING);
		return;
	}

	pEd_data->GetWindowText(str2);
	int value = atoi(LPCTSTR(str2));
	if (value<0 || value>255) {
		this->MessageBox("DATA must between 0 and 255.", NULL, MB_ICONEXCLAMATION | MB_ICONWARNING);
		return;
	}
	char* str = (char*)calloc(10, sizeof(char));
	_itoa(value, str, 16);
	str2 = CString(str);
	if (!str1.IsEmpty() && !str2.IsEmpty()) {
		pLB->AddString(str1+": 0x"+str2);
	}
	free(str);
	errors.add(key, value);
}

void CPageE::OnButtonDel1() 
{
	// TODO: Add your control notification handler code here
	if (checked1) {
		CListBox * pLB=(CListBox*)this->GetDlgItem(IDC_LIST1);
		int index = pLB->GetCurSel();
		pLB->DeleteString(index);
		errors.remove(index);
	}
}

void CPageE::OnCheck1() 
{
	// TODO: Add your control notification handler code here
	CEdit * pEd_pos=(CEdit *)this->GetDlgItem(IDC_EDIT_P1);
	CEdit * pEd_data=(CEdit *)this->GetDlgItem(IDC_EDIT_D1);
	CListBox * pLB=(CListBox*)this->GetDlgItem(IDC_LIST1);
	CString temp;
	temp.Empty();
	if (pLB->IsWindowEnabled()) {
		int count = pLB->GetCount();
		while (count > 0) {
			pLB->DeleteString(--count);
		}
		
		pEd_pos->EnableWindow(FALSE);
		pEd_data->EnableWindow(FALSE);
		pLB->EnableWindow(FALSE);
		errors.clear();
		checked1 = FALSE;
	}else {
		pEd_pos->SetWindowText(temp);
		pEd_data->SetWindowText(temp);

		pEd_pos->EnableWindow();
		pEd_data->EnableWindow();
		pLB->EnableWindow();
		checked1 = TRUE;
	}
}

void CPageE::OnButtonAdd2() 
{
	// TODO: Add your control notification handler code here
	if (!checked2) {
		return;
	}
	CListBox * pLB=(CListBox*)this->GetDlgItem(IDC_LIST2);
	CEdit * pEd_pos=(CEdit *)this->GetDlgItem(IDC_EDIT_P2);
	CEdit * pEd_data=(CEdit *)this->GetDlgItem(IDC_EDIT_D2);
	CString str1, str2;
	pEd_pos->GetWindowText(str1);	
	pEd_data->GetWindowText(str2);
	
    int key = atoi(LPCTSTR(str1));
	if (erasures.exist(key)) {
		this->MessageBox("This erasure has already been imported.", NULL, MB_ICONEXCLAMATION | MB_ICONWARNING);
		return;
	}
	if (key > msg.GetLength() || key <= 0) {
		this->MessageBox("This erasure position is abnormal.", NULL, MB_ICONEXCLAMATION | MB_ICONWARNING);
		return;
	}
	
	int value = atoi(LPCTSTR(str2));
	if (value<0 || value>255) {
		this->MessageBox("DATA must between 0 and 255.", NULL, MB_ICONEXCLAMATION | MB_ICONWARNING);
		return;
	}
	char* str = (char*)calloc(10, sizeof(char));
	_itoa(value, str, 16);
	str2 = CString(str);
	if (!str1.IsEmpty() && !str2.IsEmpty()) {
		pLB->AddString(str1+": 0x"+str2);
	}
	free(str);
	erasures.add(key, value);
}

void CPageE::OnButtonDel2() 
{
	// TODO: Add your control notification handler code here
	if (!checked2) {
		return;
	}
	CListBox * pLB=(CListBox*)this->GetDlgItem(IDC_LIST2);
	int index = pLB->GetCurSel();
	pLB->DeleteString(index);
	erasures.remove(index);
}

void CPageE::OnCheck2() 
{
	// TODO: Add your control notification handler code here
	CEdit * pEd_pos=(CEdit *)this->GetDlgItem(IDC_EDIT_P2);
	CEdit * pEd_data=(CEdit *)this->GetDlgItem(IDC_EDIT_D2);
	CListBox * pLB=(CListBox*)this->GetDlgItem(IDC_LIST2);
	if (pLB->IsWindowEnabled()) {
		int count = pLB->GetCount();
		while (count > 0) {
			pLB->DeleteString(--count);
		}
		
		pEd_pos->EnableWindow(FALSE);
		pEd_data->EnableWindow(FALSE);
		pLB->EnableWindow(FALSE);
		erasures.clear();
		checked2 = FALSE;
	}else {
		pEd_pos->SetWindowText("");
		pEd_data->SetWindowText("");
		
		pEd_pos->EnableWindow();
		pEd_data->EnableWindow();
		pLB->EnableWindow();
		checked2 = TRUE;
	}
}

void CPageE::ShowText()
{
	CStatic * pStatic=(CStatic *)this->GetDlgItem(IDC_STATIC_TIP);
	pStatic->SetWindowText("Parity Num is the number of parity bytes which will be appended to the message to make a codeword. \r\nHere, we assume that it is at least four bytes of parity. In general, with E errors, and K erasures, you will need 2E + K bytes of parity.");
}

void CPageE::OnButton1() 
{
	// TODO: Add your control notification handler code here
	CEdit * pEd_NPAR = (CEdit *)this->GetDlgItem(IDC_NPAR);
	CString str;
	pEd_NPAR->GetWindowText(str);
	parityNum = atoi(LPCTSTR(str));
	if (parityNum < 4 || parityNum > 20) {
		this->MessageBox("Parity Num must between 4 and 20.", NULL, MB_ICONEXCLAMATION | MB_ICONWARNING);
		return;
	}

	/* Initialization the ECC library */
	initialize_ecc ();
	
	/* Encode data into codeword, adding NPAR parity bytes */

	int len = msg.GetLength();
	for (int i=0; i<len; i++)
		message[i] = msg[i];

	encode_data(message, len, code);

	str.Empty();
	for (i = 0; i < parityNum; i++) {
		CString temp;
		temp.Empty();
		temp.Format("%#x", LPCTSTR(code[len+i]));
		str += temp;
		str += " ";
	}
	CEdit * pEd_Byte = (CEdit *)this->GetDlgItem(IDC_Bytes);
	pEd_Byte->SetWindowText(str);	
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区久久久| 91精品国产手机| 国产精品久99| 成人av免费在线观看| 欧美国产一区二区| 波多野结衣中文一区| 国产精品国产三级国产aⅴ无密码| 国产美女视频一区| 国产精品天美传媒| 色呦呦国产精品| 天堂久久久久va久久久久| 欧美乱熟臀69xxxxxx| 麻豆一区二区三| 国产精品乱人伦一区二区| 91精品欧美久久久久久动漫| 亚洲女厕所小便bbb| 成人高清视频在线| 亚洲在线观看免费| 精品久久久久久最新网址| 艳妇臀荡乳欲伦亚洲一区| 成人自拍视频在线| 日韩制服丝袜av| 亚洲国产成人在线| 91精品国产综合久久精品app| 国产精品18久久久久久久久| 亚洲欧美另类久久久精品2019 | 日韩欧美精品三级| 91在线视频免费91| 精东粉嫩av免费一区二区三区| 国产精品久久久久久久久久免费看 | 日韩欧美国产wwwww| 欧美自拍偷拍一区| 国产99一区视频免费| 日韩成人免费在线| 亚洲精品日韩专区silk| 久久久www成人免费毛片麻豆| 欧美疯狂做受xxxx富婆| 91国产精品成人| 91色乱码一区二区三区| 成人国产精品免费观看动漫| 麻豆成人91精品二区三区| 亚洲一区二区三区免费视频| 国产无遮挡一区二区三区毛片日本| 国产不卡一区视频| 丝袜美腿亚洲一区二区图片| 亚洲免费看黄网站| 日韩毛片精品高清免费| 国产精品超碰97尤物18| 国产网站一区二区三区| 久久久久97国产精华液好用吗| 欧美大尺度电影在线| 日韩一级大片在线观看| 日韩免费视频线观看| 欧美精品v国产精品v日韩精品 | 91视频免费播放| 色哟哟精品一区| 欧美精品视频www在线观看| 正在播放一区二区| 久久亚洲精华国产精华液| 久久综合九色欧美综合狠狠| 久久久.com| 三级精品在线观看| 国产一区二区三区av电影| 精品嫩草影院久久| 中文字幕一区二区三区四区不卡| 亚洲欧美韩国综合色| 一区二区三区美女视频| 日韩电影免费一区| 国产精品77777竹菊影视小说| k8久久久一区二区三区| 日本电影欧美片| 日韩欧美国产系列| 亚洲美女免费视频| 国产一区激情在线| 欧美日韩精品一区二区三区| 亚洲精品一区二区三区99| 亚洲精品日韩一| 成人天堂资源www在线| 日韩精品中午字幕| 国产日韩综合av| 美日韩一级片在线观看| 欧美午夜一区二区三区 | 日韩精品专区在线影院重磅| 亚洲蜜桃精久久久久久久| 国产精品综合一区二区三区| 91在线无精精品入口| 国产午夜精品理论片a级大结局 | 2021中文字幕一区亚洲| 亚洲一区免费视频| 色偷偷一区二区三区| 国产精品不卡一区二区三区| 国产大陆a不卡| 精品国产第一区二区三区观看体验| 亚洲一区视频在线| 欧美性猛交xxxx黑人交| 亚洲一区二区三区中文字幕在线| 99在线精品观看| 中文字幕不卡在线播放| 国产福利一区在线观看| 国产亚洲欧美一区在线观看| 国产激情偷乱视频一区二区三区| 久久亚洲二区三区| 色呦呦国产精品| 亚洲在线中文字幕| 91精品综合久久久久久| 久久91精品久久久久久秒播| 久久久综合激的五月天| a亚洲天堂av| 亚洲国产精品久久久久婷婷884 | 精品一区二区三区在线播放 | 欧美一区二区三区成人| 国产在线视频一区二区| 亚洲男人天堂av| 日韩精品一区二区三区视频在线观看| 麻豆国产欧美日韩综合精品二区| 精品国产伦一区二区三区观看方式| 国内久久婷婷综合| 亚洲亚洲人成综合网络| 日韩欧美精品三级| 91污在线观看| 精品一区免费av| 夜夜操天天操亚洲| 国产精品色呦呦| 欧美一级淫片007| 成人一区二区三区在线观看| 亚洲国产一区二区三区| 中文字幕欧美三区| 91精品国产美女浴室洗澡无遮挡| 成人高清伦理免费影院在线观看| 一级女性全黄久久生活片免费| 欧美一区二区在线播放| 99综合电影在线视频| 国产成人自拍网| 久久99深爱久久99精品| 日韩影院免费视频| 亚洲国产精品一区二区久久| 中文字幕中文乱码欧美一区二区| 欧美精品一区二区三| 日韩天堂在线观看| 91精品在线一区二区| 欧美美女网站色| 91福利在线免费观看| 国产精品99久久久久久似苏梦涵| 日韩综合一区二区| 日韩专区欧美专区| 天天av天天翘天天综合网色鬼国产 | 成人精品视频.| 成人性生交大片免费看中文| 国产激情一区二区三区桃花岛亚洲| 免费成人在线视频观看| 狠狠色狠狠色合久久伊人| 国产资源在线一区| 久99久精品视频免费观看| 国模大尺度一区二区三区| 国产成人久久精品77777最新版本| 久久国产免费看| 成人福利视频在线| 99久久精品99国产精品| 2020国产精品自拍| 自拍偷拍国产亚洲| 日韩成人午夜电影| 91香蕉视频污在线| 精品国产免费久久| 亚洲黄一区二区三区| 麻豆中文一区二区| 91丨九色丨黑人外教| 日韩小视频在线观看专区| 亚洲欧洲色图综合| 美女在线一区二区| 日本精品一级二级| 国产亚洲精品福利| 亚洲一区视频在线观看视频| 国产乱国产乱300精品| 欧美日韩在线三区| 亚洲视频在线观看一区| 精品一区二区综合| 欧美一区二区福利视频| 夜夜揉揉日日人人青青一国产精品 | 老司机精品视频在线| 91丨九色丨蝌蚪丨老版| 国产色一区二区| 日本女优在线视频一区二区| 成人爽a毛片一区二区免费| 精品国产麻豆免费人成网站| 亚洲一二三四区不卡| av一区二区久久| 欧美国产欧美综合| 国产成人精品免费看| 久久久精品影视| 国产精品一区一区三区| 日韩精品一区二区三区swag| 亚洲国产成人高清精品| 色国产综合视频| 成人欧美一区二区三区视频网页| 国产福利一区二区三区视频 | 精品欧美一区二区三区精品久久| 亚洲你懂的在线视频| 日韩午夜av一区| 激情综合亚洲精品| 日韩丝袜美女视频|