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

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

?? confusionmatrix.cpp

?? 粗慥集成算法集合 ,并有詳細的文檔資料和測試數據處
?? CPP
字號:
//-------------------------------------------------------------------
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Revisions.....:
//===================================================================

#include <stdafx.h> // Precompiled headers.
#include <copyright.h>

#include <kernel/structures/confusionmatrix.h>

#include <kernel/utilities/iokit.h>
#include <kernel/utilities/creator.h>

#include <kernel/system/fstream.h>

//-------------------------------------------------------------------
// Static methods (file scope).
//===================================================================

//-------------------------------------------------------------------
// Method........: StaticInteger/StaticFloat
// Author........: Aleksander 豩rn
// Date..........:
// Description...: For fixed-width formatting.
// Comments......:
// Revisions.....:
//===================================================================

static String
StaticInteger(int i, int width) {

	String formatted;

	// Initialize.
	if (i == Undefined::Integer())
		formatted = Undefined::String();
	else
		formatted = String::Format(i);

	// Pad or truncate.
	formatted.Pad(' ', width);

	return formatted;

}

static String
StaticFloat(float f, int width) {

	String formatted;

	// Initialize.
	if (f == Undefined::Float())
		formatted = Undefined::String();
	else
		formatted = String::Format(100 * f) + '%';

	// Pad or truncate.
	formatted.Pad(' ', width);

	if (f == Undefined::Float())
		return formatted;

	if (formatted.Last() != ' ')
		formatted[formatted.GetLength() - 1] = '%';

	return formatted;

}

//-------------------------------------------------------------------
// Methods for class ConfusionMatrix.
//===================================================================

//-------------------------------------------------------------------
// Constructors/destructor.
//===================================================================

//-------------------------------------------------------------------
// Method........: Copy constructor
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Comments......:
// Revisions.....:
//===================================================================

ConfusionMatrix::ConfusionMatrix(const ConfusionMatrix &in) : AnnotatedStructure(in) {

	// Duplicate matrix.
	if (!in.matrix_.IsNULL())
		matrix_ = dynamic_cast(DecisionTable *, in.matrix_->Duplicate());
	else
		matrix_ = NULL;

	// Duplicate map.
	if (in.map_ == NULL)
		map_ = NULL;
	else
		map_ = new IMap(*(in.map_));

}

//-------------------------------------------------------------------
// Method........: Constructor
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Comments......: Annotation not needed, superstructure should have
//                 one.
// Revisions.....:
//===================================================================

ConfusionMatrix::ConfusionMatrix() {

	// Create the physical representation.
	matrix_    = Creator::DecisionTable();
	map_       = NULL;

	matrix_->SetDictionary(NULL);

	// No annotation needed.
	SetAnnotation(NULL);

}

//-------------------------------------------------------------------
// Method........: Constructor
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Comments......: Annotation not needed, superstructure should have
//                 one.
// Revisions.....:
//===================================================================

ConfusionMatrix::ConfusionMatrix(int dimension) {

	// Create the physical representation.
	matrix_    = Creator::DecisionTable();
	map_       = NULL;

	matrix_->SetDictionary(NULL);

	// Adjust dimensionality.
	SetDimension(dimension);

	// No annotation needed.
	SetAnnotation(NULL);

  // Reset entries.
	Clear();

}

//-------------------------------------------------------------------
// Method........: Destructor
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Comments......:
// Revisions.....:
//===================================================================

ConfusionMatrix::~ConfusionMatrix() {
	delete map_;
}

//-------------------------------------------------------------------
// Methods inherited from Identifier.
//===================================================================

IMPLEMENTIDMETHODS(ConfusionMatrix, CONFUSIONMATRIX, AnnotatedStructure)

//-------------------------------------------------------------------
// Methods inherited from Persistent.
//===================================================================

//-------------------------------------------------------------------
// Method........: Load
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Comments......:
// Revisions.....:
//===================================================================

bool
ConfusionMatrix::Load(ifstream &stream) {

	// Load data higher up in the hierarchy.
	if (!AnnotatedStructure::Load(stream))
		return false;

	// Reset old physical representation.
	matrix_ = NULL;
	matrix_ = Creator::DecisionTable();
	matrix_->SetDictionary(NULL);

	delete map_;
	map_ = NULL;

	int size, mapping;

	// Load map size.
	if (!IOKit::Load(stream, size))
		return false;

	int i;

	// Load map.
	for (i = 0; i < size; i++) {
		if (!IOKit::Load(stream, mapping))
			return false;
		if (!SetMap(i, mapping))
			return false;
	}

	// Load actual matrix.
	if (!matrix_->Load(stream))
		return false;

	return true;

}

//-------------------------------------------------------------------
// Method........: Save
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Comments......:
// Revisions.....:
//===================================================================

bool
ConfusionMatrix::Save(ofstream &stream) const {

	// Save data higher up in the hierarchy.
	if (!AnnotatedStructure::Save(stream))
		return false;

	// Save size.
	if (!IOKit::Save(stream, GetDimension()))
		return false;

	if (!IOKit::Save(stream, '\n'))
		return false;

	int i;

	// Save map.
	for (i = 0; i < GetDimension(); i++) {
		if (!IOKit::Save(stream, GetValue(i)))
			return false;
	}

	if (!IOKit::Save(stream, '\n'))
		return false;

	// Save actual matrix.
	if (!matrix_->Save(stream))
		return false;

	return true;

}

//-------------------------------------------------------------------
// Methods inherited from Structure.
//===================================================================

//-------------------------------------------------------------------
// Method........: Duplicate
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Comments......:
// Revisions.....:
//===================================================================

Structure *
ConfusionMatrix::Duplicate() const {
	return new ConfusionMatrix(*this);
}

//-------------------------------------------------------------------
// Method........: Clear
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Comments......:
// Revisions.....:
//===================================================================

void
ConfusionMatrix::Clear() {

	int i, j;

	// Reset all entries.
	for (i = 0; i < GetDimension(); i++) {
		for (j = 0; j < GetDimension(); j++) {
			SetEntry(i, j, 0);
		}
	}

	// Clear stuff higher up.
	AnnotatedStructure::Clear();

}

//-------------------------------------------------------------------
// Operators.
//===================================================================

//-------------------------------------------------------------------
// Operator......: =
// Author........: Aleksander 豩rn
// Date..........:
// Description...: Assignment operator.
// Comments......:
// Revisions.....:
//===================================================================

ConfusionMatrix &
ConfusionMatrix::operator=(const ConfusionMatrix &in) {

	// Protect against self-assignment.
	if (this == &in)
		return *this;

	// Duplicate physical representation.
	if (in.matrix_.IsNULL())
		matrix_ = NULL;
	else
		matrix_ = dynamic_cast(DecisionTable *, in.matrix_->Duplicate());

	if (in.map_ == NULL)
		map_ = NULL;
	else
		map_ = new IMap(*(in.map_));

	// This should be done elsewhere...
	SetAnnotation(NULL);

  return *this;

}

//-------------------------------------------------------------------
// Operator......: ==
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Comments......:
// Revisions.....: A

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩在线一区二区| 972aa.com艺术欧美| 亚洲人成网站精品片在线观看| 日韩欧美激情在线| 日韩欧美另类在线| 欧美成人精品1314www| 精品美女在线观看| 精品国产乱码久久久久久1区2区| 日韩手机在线导航| 精品久久久久99| 久久久久久一级片| 亚洲欧洲av在线| 亚洲人成网站在线| 亚洲高清免费一级二级三级| 亚洲成人午夜电影| 久久国产生活片100| 国产成人午夜精品5599| 99久久综合国产精品| 欧美怡红院视频| 日韩一区二区三区免费看| 久久久久国产精品免费免费搜索| 国产目拍亚洲精品99久久精品| 最近中文字幕一区二区三区| 亚洲第一狼人社区| 国产一区二区三区四| av中文字幕一区| 欧美性色黄大片手机版| 欧美一区二区三区在线视频| 国产欧美一区二区三区网站| 亚洲一区在线观看免费观看电影高清| 婷婷中文字幕综合| 成人一区二区三区视频在线观看| 色噜噜狠狠成人中文综合| 欧美一区二区三区电影| 中文字幕av一区二区三区高| 亚洲国产精品尤物yw在线观看| 国产一区二区三区蝌蚪| 欧洲色大大久久| 2021中文字幕一区亚洲| 亚洲国产成人精品视频| 国产精品一区二区三区四区| 欧美无砖专区一中文字| 国产日产欧产精品推荐色| 午夜精品在线看| 99精品桃花视频在线观看| 日韩欧美亚洲另类制服综合在线| 国产精品国产三级国产| 经典三级在线一区| 欧美又粗又大又爽| 国产精品久久国产精麻豆99网站| 美女mm1313爽爽久久久蜜臀| 91成人在线观看喷潮| 久久综合国产精品| 美女一区二区三区在线观看| 在线观看91视频| 国产精品天美传媒| 国产宾馆实践打屁股91| 精品久久五月天| 欧美a级理论片| 欧美日韩一区二区三区在线| 国产精品网站在线观看| 国产精品一卡二卡在线观看| 欧美videossexotv100| 午夜亚洲国产au精品一区二区| 色综合中文字幕国产| 久久美女高清视频| 麻豆成人久久精品二区三区小说| 欧美日韩国产乱码电影| 亚洲国产精品影院| 欧美日韩免费一区二区三区视频| 专区另类欧美日韩| 91网站在线播放| 日韩伦理av电影| av一区二区三区黑人| 中文字幕巨乱亚洲| hitomi一区二区三区精品| 国产精品久久久久久久久免费丝袜| 国产黄色精品视频| 国产精品美女一区二区三区| 成人一区二区三区视频在线观看| 国产精品国产自产拍在线| 成人91在线观看| 亚洲视频一区二区在线观看| 色婷婷精品久久二区二区蜜臂av | 欧美精品一区二区久久婷婷| 美腿丝袜亚洲一区| 精品国产青草久久久久福利| 国内成人精品2018免费看| 久久精品欧美一区二区三区不卡| 国产九色sp调教91| 亚洲国产成人在线| 91久久精品一区二区三区| 一区二区三区四区在线| 69久久99精品久久久久婷婷| 精品一区二区三区免费| 国产精品私房写真福利视频| www.欧美精品一二区| 亚洲精品成人精品456| 欧美色图在线观看| 美女一区二区视频| 国产精品三级视频| 欧美日韩一区二区三区四区 | 国产传媒日韩欧美成人| ...av二区三区久久精品| 欧美日韩久久久| 久久9热精品视频| 亚洲欧美另类小说| 日韩精品一区二区三区蜜臀| 97久久人人超碰| 捆绑调教一区二区三区| 国产精品久久久久国产精品日日| 欧美伊人久久久久久午夜久久久久| 日本中文字幕一区二区视频| 国产日韩欧美不卡在线| 欧美人成免费网站| 成+人+亚洲+综合天堂| 日本欧美一区二区| 亚洲黄色免费电影| 久久婷婷久久一区二区三区| 欧美亚洲丝袜传媒另类| 国产伦理精品不卡| 天天色图综合网| 亚洲色图20p| 久久九九久精品国产免费直播| 欧美自拍偷拍一区| 成人黄色片在线观看| 久久99久久99精品免视看婷婷| 最新国产精品久久精品| 欧美精品一区二区三区高清aⅴ| 欧美在线免费观看亚洲| 黑人巨大精品欧美一区| 午夜影视日本亚洲欧洲精品| 综合久久久久综合| 国产欧美日本一区视频| 精品国产伦一区二区三区免费| 在线观看日韩高清av| 99久久精品免费看国产免费软件| 国产在线精品视频| 美女www一区二区| 免费看精品久久片| 午夜精品福利在线| 亚洲成人精品影院| 亚洲一卡二卡三卡四卡 | 8x8x8国产精品| 欧美日韩久久久久久| 欧美色图激情小说| 在线一区二区视频| 色悠悠久久综合| 色综合久久88色综合天天6 | 欧美zozozo| 日韩一区和二区| 欧美日产国产精品| 欧美一区二区三区在线电影| 欧美性极品少妇| 欧美日韩一本到| 欧美日韩一区二区三区在线看| 欧美性生交片4| 7777精品伊人久久久大香线蕉经典版下载 | 秋霞成人午夜伦在线观看| 午夜在线成人av| 日本欧美在线观看| 久久福利视频一区二区| 国内精品第一页| 懂色av中文一区二区三区| 成人精品一区二区三区四区| 成人综合婷婷国产精品久久| 成人少妇影院yyyy| 色婷婷久久久久swag精品| 欧美另类久久久品| 精品国产污污免费网站入口 | 日韩免费观看高清完整版在线观看| 日韩三级av在线播放| 久久精品亚洲乱码伦伦中文| 亚洲婷婷综合久久一本伊一区| 亚洲综合色在线| 久久精品国产秦先生| 成人免费视频播放| 欧美日韩国产精品自在自线| 精品嫩草影院久久| 亚洲视频一区二区在线| 奇米888四色在线精品| 国产91精品一区二区麻豆亚洲| 色老汉av一区二区三区| 精品国产第一区二区三区观看体验 | 久久99国产精品久久99 | 亚洲午夜激情网页| 麻豆精品一区二区av白丝在线| 国内久久精品视频| 99亚偷拍自图区亚洲| 91高清在线观看| 久久久蜜臀国产一区二区| 国产精品久久久久久久久久免费看 | 日韩亚洲电影在线| 国产精品卡一卡二| 美女在线视频一区| 在线观看视频一区| 亚洲国产高清aⅴ视频| 日韩成人免费电影| av色综合久久天堂av综合| 日韩一区二区三区在线|