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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? parmstatdlg.cpp

?? signal-processing.rar信號處理demo原碼
?? CPP
字號:
/*
//
//               INTEL CORPORATION PROPRIETARY INFORMATION
//  This software is supplied under the terms of a license agreement or
//  nondisclosure agreement with Intel Corporation and may not be copied
//  or disclosed except in accordance with the terms of that agreement.
//        Copyright(c) 1999-2006 Intel Corporation. All Rights Reserved.
//
*/

// ParmStatDlg.cpp : implementation of the CParmStatDlg class.
// CParmStatDlg dialog gets parameters for certain ippSP functions.
//
/////////////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "ippsDemo.h"
#include "ippsDemoDoc.h"
#include "ParmStatDlg.h"
#include "RunStat.h"

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

/////////////////////////////////////////////////////////////////////////////
// CParmStatDlg dialog


IMPLEMENT_DYNAMIC(CParmStatDlg, CParamDlg)
CParmStatDlg::CParmStatDlg(CRunStat* pRun)
   : CParamDlg(CParmStatDlg::IDD, NULL)
{
   m_UsedScale   = TRUE;
   m_pRun = pRun;
   //{{AFX_DATA_INIT(CParmStatDlg)
   m_FuncIndex = 0;
   m_DstType = -1;
   m_Im = 0.0;
   m_Re = 0.0;
   m_hint = -1;
   //}}AFX_DATA_INIT
}


void CParmStatDlg::DoDataExchange(CDataExchange* pDX)
{
   CParamDlg::DoDataExchange(pDX);
   //{{AFX_DATA_MAP(CParmStatDlg)
   DDX_Control(pDX, IDC_HINT_STATIC, m_HintStatic);
   DDX_Radio(pDX, IDC_FUNC_0, m_FuncIndex);
   DDX_Control(pDX, IDC_TYPE_STATIC, m_TypeStatic);
   DDX_Radio(pDX, IDC_TYPE_0, m_DstType);
   DDX_Text(pDX, IDC_VALUE_IM, m_Im);
   DDX_Control(pDX, IDC_VALUE_IM, m_ImEdit);
   DDX_Control(pDX, IDC_STATIC_IM, m_ImStatic);
   DDX_Text(pDX, IDC_VALUE_RE, m_Re);
   DDX_Control(pDX, IDC_VALUE_RE, m_ReEdit);
   DDX_Control(pDX, IDC_STATIC_RE, m_ReStatic);
   DDX_Radio(pDX, IDC_HINT_0, m_hint);
   //}}AFX_DATA_MAP
   DDX_Control(pDX, IDC_TYPE_0, m_TypeButton[0]);
   DDX_Control(pDX, IDC_TYPE_1, m_TypeButton[1]);

   DDX_Control(pDX, IDC_HINT_0, m_HintButton[0]);
   DDX_Control(pDX, IDC_HINT_1, m_HintButton[1]);
   DDX_Control(pDX, IDC_HINT_2, m_HintButton[2]);

   DDX_Control(pDX, IDC_FUNC_0, m_FuncButton[0]);
   DDX_Control(pDX, IDC_FUNC_1, m_FuncButton[1]);
   DDX_Control(pDX, IDC_FUNC_2, m_FuncButton[2]);
}


BEGIN_MESSAGE_MAP(CParmStatDlg, CParamDlg)
   //{{AFX_MSG_MAP(CParmStatDlg)
   ON_BN_CLICKED(IDC_FUNC_0, OnFunc)
   ON_BN_CLICKED(IDC_FUNC_1, OnFunc)
   ON_BN_CLICKED(IDC_FUNC_2, OnFunc)
   ON_BN_CLICKED(IDC_TYPE_0, OnFunc)
   ON_BN_CLICKED(IDC_TYPE_1, OnFunc)
   ON_EN_CHANGE(IDC_SCALE_EDIT, OnChangeScaleEdit)
   //}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CParmStatDlg message handlers

BOOL CParmStatDlg::OnInitDialog() 
{
   CParamDlg::OnInitDialog();
   
   SetWindowText("Statistic Functions");
   InitFunc();
   SetFunc();
   ShowType();
   ShowHint();
   EnableFunc();
   EnableType();
   EnableHint();
   EnableValues();
   m_pRun->SetValues(this);
   UpdateData(FALSE);
   return TRUE;
}

void CParmStatDlg::OnOK() 
{
   // TODO: Add extra validation here
   
   CParamDlg::OnOK();
}

void CParmStatDlg::OnFunc() 
{
   UpdateData();
   SetFunc();
   EnableType();
   EnableHint();
   EnableScale();
   m_pRun->SetValues(this);
   UpdateData(FALSE);
}

void CParmStatDlg::OnChangeScaleEdit() 
{
   if (!m_bInit) return;
   UpdateData();
   m_pRun->SetValues(this);
   UpdateData(FALSE);
}

#define FUNC_INDEX(name) { \
   if (funcName.Find(#name) != -1) \
      return name; \
}

int CParmStatDlg::FuncIndex(CMyString funcName)
{
   FUNC_INDEX(Sum);
   FUNC_INDEX(StdDev);
   FUNC_INDEX(Mean);
   return -1;
}

#define FUNC_BASE(name) { \
   if (idx == name) \
      return #name; \
}

CMyString CParmStatDlg::FuncBase(int idx)
{
   FUNC_BASE(StdDev);
   FUNC_BASE(Sum);
   FUNC_BASE(Mean);
   return "";
}

int CParmStatDlg::TypeIndex(CMyString funcName)
{
   FUNC_INDEX(_16sc32sc);
   FUNC_INDEX(_16sc);
   FUNC_INDEX(_16s32s);
   FUNC_INDEX(_16s);
   return -1;
}

CMyString CParmStatDlg::TypeName(int dstType)
{
   CMyString name = m_pDocSrc->GetVector()->TypeString();
   ppType srcType  = m_pDocSrc->GetVector()->Type();
   CMyString suffix = (srcType & PP_CPLX) ? "c" : "";
   switch (dstType) {
   case _16s32s: name += "32s" + suffix; break;
   }
   return name;
}

void CParmStatDlg::InitFunc() 
{
   m_FuncIndex = FuncIndex(m_Func);
   m_DstType = TypeIndex(m_Func);
}

CFunc CParmStatDlg::GetFunc(int index, int dstType) 
{
   CMyString funcBase = FuncBase(index);
   CMyString typeName;
   if (TypeFlag(funcBase))
      typeName = TypeName(dstType);
   CFunc func = "ipps" + funcBase + "_" + typeName;
   if (typeName.IsEmpty())
      func += m_pDocSrc->GetVector()->TypeString();
   if (func.DstType() & PP_SIGN)
      func += "_Sfs";
   return func;
}

void CParmStatDlg::SetFunc() 
{
   m_Func = GetFunc(m_FuncIndex, m_DstType);
}

void CParmStatDlg::EnableFunc() 
{
   for (int i=0; i<FuncNum; i++) {
      CFunc func = GetFunc(i, -1);
      BOOL flag = DEMO_APP->GetIppList()->Find(func) ? TRUE : FALSE;
      m_FuncButton[i].EnableWindow(flag);
   }
}

void CParmStatDlg::EnableValues() 
{
   BOOL bCplx = m_Func.DstType() & PP_CPLX;
   m_ImStatic.ShowWindow(bCplx ? SW_SHOWNA : SW_HIDE);
   m_ImEdit.ShowWindow(bCplx ? SW_SHOWNA : SW_HIDE);
   m_ReStatic.SetWindowText(bCplx ? "Re" : "");
}

BOOL CParmStatDlg::TypeFlag(CMyString funcBase)
{
   return funcBase == "Sum" || funcBase == "StdDev";
}

void CParmStatDlg::ShowType() 
{
   ppType type = m_pDocSrc->GetVector()->Type();
   CMyString cplxStr = (type & PP_CPLX) ? "c" : "";
   if (type & 16) {
      CMyString typeName[] = {"16s", "32s"};
      for (int i=0; i<2; i++)
         ShowTypeButton(i, typeName[i] + cplxStr);
      m_TypeStatic.ShowWindow(SW_SHOWNA);
   } 
}

void CParmStatDlg::EnableType() 
{
   BOOL flag = TypeFlag(m_Func.BaseName());
   m_TypeStatic.EnableWindow(flag);
   for (int i=0; i<TypeNum; i++)
      m_TypeButton[i].EnableWindow(flag);
}

void CParmStatDlg::ShowHint() 
{
   ppType type = m_pDocSrc->GetVector()->Type();
   if (type == pp32f || type == pp32fc) {
      for (int i=0; i<3; i++)
         m_HintButton[i].ShowWindow(SW_SHOWNA);
      m_HintStatic.ShowWindow(SW_SHOWNA);
   }
}

void CParmStatDlg::EnableHint() 
{
   BOOL flag = !m_Func.Found("Min") && !m_Func.Found("Max");
   m_HintStatic.EnableWindow(flag);
   for (int i=0; i<3; i++)
      m_HintButton[i].EnableWindow(flag);
}

void CParmStatDlg::ShowTypeButton(int i, CMyString text) 
{
   m_TypeButton[i].ShowWindow(SW_SHOWNA);
   m_TypeButton[i].SetWindowText(text);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日产欧产美韩系列久久99| 99国产精品久久| 亚洲男帅同性gay1069| 国产亚洲人成网站| 7799精品视频| 午夜视频在线观看一区| 精品视频免费在线| 日韩高清欧美激情| www国产成人| 成人动漫中文字幕| 亚洲另类春色校园小说| 欧美高清一级片在线| 欧美系列亚洲系列| a级精品国产片在线观看| 欧美亚男人的天堂| 日本一区二区三区四区在线视频| 中文字幕制服丝袜成人av| 亚洲视频在线观看一区| 成人综合婷婷国产精品久久免费| 99久久伊人网影院| 欧美亚洲国产一区在线观看网站| 午夜精品123| 精品国产凹凸成av人网站| 不卡一区中文字幕| 午夜亚洲国产au精品一区二区| 日韩欧美一级二级三级| 91麻豆swag| 精品在线观看视频| 亚洲男女一区二区三区| 日韩精品专区在线影院重磅| 91欧美一区二区| 捆绑紧缚一区二区三区视频| 亚洲欧美视频在线观看视频| 精品裸体舞一区二区三区| 色女孩综合影院| 国产美女精品一区二区三区| 亚洲一区二区三区自拍| 日本一区二区三区四区| 日韩美女一区二区三区四区| 色偷偷一区二区三区| 国产电影一区二区三区| 日韩成人免费在线| 一区二区欧美国产| 国产精品免费久久久久| 26uuu成人网一区二区三区| 欧美丝袜自拍制服另类| 成人一区二区三区中文字幕| 美女视频免费一区| 亚洲精品视频免费观看| 国产午夜精品理论片a级大结局| 欧美精品少妇一区二区三区| 在线不卡欧美精品一区二区三区| 国产伦精品一区二区三区视频青涩| 亚洲永久精品国产| 国产精品免费久久| 国产婷婷色一区二区三区| 日韩欧美一卡二卡| 国产免费成人在线视频| 欧美成人r级一区二区三区| 欧美天堂一区二区三区| 色综合色狠狠天天综合色| 成av人片一区二区| 成人免费视频国产在线观看| 久久er99精品| 男人操女人的视频在线观看欧美| 一区二区三区在线观看国产 | 亚洲国产日韩一区二区| 国产精品精品国产色婷婷| 国产喂奶挤奶一区二区三区 | 17c精品麻豆一区二区免费| 久久精品水蜜桃av综合天堂| 久久久美女毛片| 国产欧美精品一区| 欧美韩国日本一区| 国产精品久久久久影院老司| 国产精品成人免费在线| 日韩美女精品在线| 最新高清无码专区| 亚洲精选免费视频| 午夜欧美视频在线观看| 亚洲成人av福利| 亚洲高清免费视频| 日本一区中文字幕| 韩国三级在线一区| 成人午夜av影视| 色综合久久综合网97色综合| 欧美在线观看一二区| 91精品国产麻豆国产自产在线| 日韩一级在线观看| 欧美在线一区二区三区| 亚洲猫色日本管| 亚洲视频香蕉人妖| 亚洲一本大道在线| 美女脱光内衣内裤视频久久网站| 久久99久国产精品黄毛片色诱| 韩国成人在线视频| 懂色av中文字幕一区二区三区| 9色porny自拍视频一区二区| 色哟哟在线观看一区二区三区| 欧美调教femdomvk| 欧美一级欧美三级| 国产欧美日韩综合精品一区二区| 中文字幕中文字幕一区二区| 性久久久久久久| 国产一区视频导航| 色婷婷综合视频在线观看| 8v天堂国产在线一区二区| 国产午夜亚洲精品不卡| 一区二区三区精品在线| 美日韩一级片在线观看| av高清久久久| 日韩欧美亚洲国产精品字幕久久久| 国产欧美日韩综合| 午夜久久久久久久久| 国产一区二区不卡| 亚洲国产综合人成综合网站| 18涩涩午夜精品.www| 天堂va蜜桃一区二区三区漫画版| 精品在线一区二区| 91久久香蕉国产日韩欧美9色| 欧美一区二区三区在线电影| 中文字幕在线免费不卡| 日本不卡的三区四区五区| 波波电影院一区二区三区| 7777女厕盗摄久久久| 自拍偷拍亚洲激情| 国产麻豆9l精品三级站| 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 日韩色视频在线观看| 亚洲毛片av在线| 国产成人免费高清| 日韩欧美一级特黄在线播放| 一区二区三区四区视频精品免费 | 亚洲成精国产精品女| 国产精品99久久久久久似苏梦涵| 99re这里都是精品| 精品福利av导航| 亚洲444eee在线观看| 91原创在线视频| 中文字幕不卡在线| 精品在线播放免费| 欧美日韩国产bt| 一区二区三国产精华液| 99精品视频一区| 中文字幕av一区二区三区免费看| 麻豆精品国产传媒mv男同| 欧美日韩aaaaaa| 亚洲1区2区3区4区| 欧美在线你懂得| 一区二区三区 在线观看视频| 成人手机在线视频| 国产视频一区二区在线观看| 韩日欧美一区二区三区| 精品国产一二三区| 美女看a上一区| 日韩欧美成人一区| 免费观看一级欧美片| 欧美一区二区在线视频| 日本亚洲视频在线| 欧美日韩国产成人在线91| 午夜精品久久久久久久久久| 欧美在线free| 亚洲第一电影网| 欧美精品少妇一区二区三区| 午夜精品影院在线观看| 在线电影国产精品| 亚洲欧美一区二区不卡| 五月天激情小说综合| 精品福利在线导航| 欧美激情一区二区在线| 免费观看成人av| 欧美顶级少妇做爰| 一区二区三区在线免费播放| eeuss鲁片一区二区三区在线观看| 在线播放视频一区| 国产欧美一区视频| 欧美手机在线视频| 国产麻豆精品theporn| 色老汉一区二区三区| 欧美激情一区二区在线| 麻豆视频观看网址久久| 欧美日韩大陆一区二区| 亚洲男同性恋视频| 高清不卡一二三区| 欧美一区二区三级| 偷拍一区二区三区| 91蝌蚪porny| 中文字幕中文字幕一区| 高清shemale亚洲人妖| 国产亚洲欧美中文| 国产在线一区二区| 久久综合九色综合久久久精品综合| 亚洲国产精品久久久男人的天堂| 99国产精品久久久| 亚洲欧美激情一区二区| av电影在线不卡| 亚洲免费观看高清| 欧洲亚洲国产日韩| 偷拍一区二区三区四区| 日韩一区二区三区电影|