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

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

?? cppruleexporter.cpp

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

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

#include <kernel/algorithms/cppruleexporter.h>

#include <kernel/structures/rules.h>
#include <kernel/structures/rule.h>

#include <kernel/utilities/systemkit.h>

#include <kernel/system/fstream.h>

#include <kernel/basic/message.h>

//-------------------------------------------------------------------
// Static helpers.
//===================================================================

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

static String
StaticGetName(const DecisionTable &table, int attribute_no, bool masked) {

	String name = table.GetAttributeName(attribute_no, masked);

	name.Replace(' ', '_');
	name.Capitalize();

	return name;

}

//-------------------------------------------------------------------
// Methods for class CPPRuleExporter.
//===================================================================

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

CPPRuleExporter::CPPRuleExporter() {
}

CPPRuleExporter::~CPPRuleExporter() {
}

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

IMPLEMENTIDMETHODS(CPPRuleExporter, CPPRULEEXPORTER, RuleExporter)

//-------------------------------------------------------------------
// Methods inherited from Exporter.
//===================================================================

//-------------------------------------------------------------------
// Method........: ExportPrologue
// Author........: Aleksander 豩rn
// Date..........:
// Description...: Exports the header (.h) file.
// Comments......:
// Revisions.....:
//===================================================================

bool
CPPRuleExporter::ExportPrologue(ofstream &stream, const Structure &structure) const {

	int i;

	// Cast to already verified type (in Apply method).
	Handle<Rules> rules = dynamic_cast(Rules *, const_cast(Structure *, &structure));

	// Get originating decision table.
	Handle<DecisionTable> table = dynamic_cast(DecisionTable *, rules->FindParent(DECISIONTABLE));

	if (table == NULL) {
		Message::Error("Could not trace back to the rules' originating decision table for a dictionary.");
		return false;
	}

	bool masked = true;

	int no_attributes = table->GetNoAttributes(masked);

	// Write marker.
	stream << "//------------------------------------------------------------------" << endl;
	stream << "// The header (.h) file starts here."                                 << endl;
	stream << "//==================================================================" << endl;
	stream << endl;

	// Write some general information.
	stream << "// Classifier generated by ROSETTA."                                                << endl;
	stream << "// Exported " << SystemKit::GetTimestamp() << " by " << SystemKit::GetUser() << "." << endl;
	stream << "//"                                                                                 << endl;
	stream << "// " << rules->GetName()                                                            << endl;
	stream << "// " << rules->GetNoRules() << " rules."                                            << endl;
	stream << endl;

	// Add #ifndef section.
	stream << "#ifndef __CLASSIFIER_EXPORTED_FROM_ROSETTA_H__" << endl;
	stream << "#define __CLASSIFIER_EXPORTED_FROM_ROSETTA_H__" << endl;
	stream << endl;

	// Define the ROSETTAObject class.
	stream << "//------------------------------------------------------------------" << endl;
	stream << "// Class.........: ROSETTAObject"                                     << endl;
	stream << "// Author........: Aleksander 豩rn"                                   << endl;
	stream << "// Date..........: " << SystemKit::GetTimestamp()                     << endl;
	stream << "// Description...: An object input to a ROSETTAClassifier."           << endl;
	stream << "//"                                                                   << endl;
	stream << "//                 For a legend to the encoding of slots for the"     << endl;
	stream << "//                 symbolic attributes, see the Lookup methods."      << endl;
	stream << "//==================================================================" << endl;
	stream << endl;
	stream << "class ROSETTAObject {"                                                << endl;
	stream << "public:"                                                              << endl;
	stream << endl;
	stream << "  // Variable slots................................................." << endl;

	for (i = 0; i < no_attributes; i++) {

		if (!table->IsCondition(i, masked))
			continue;

		// Variable type.
		if (table->IsFloat(i, masked))
			stream << "  float      ";
		else
			stream << "  int        ";

		String name = StaticGetName(*table, i, masked);

		// Variable name.
		stream << name << ';';

		stream << endl;

	}

	stream << endl;
	stream << "  // Dictionary lookup methods......................................" << endl;

	// Method names.
	for (i = 0; i < no_attributes; i++) {
		if (table->IsCondition(i, masked) && table->IsSymbolic(i, masked))
			stream << "  static int Lookup" << StaticGetName(*table, i, masked) << "(const char *text);" << endl;
	}

	stream << endl;
	stream << "};" << endl;
	stream << endl;

	// Determine index of decision attribute.
	int decision_attribute = table->GetDecisionAttribute(masked);

	if (decision_attribute == Undefined::Integer()) {
		Message::Error("No decision attribute detected in parent table.");
		return false;
	}

	Vector(int) decisionvalues;
	Vector(int) cardinalities;

	// Determine set of possible decision values.
	if (!table->GetValueSet(decisionvalues, cardinalities, decision_attribute, masked)) {
		Message::Error("Failed to get set of possible decision values from parent table.");
		return false;
	}

	// Define the ROSETTAClassifier class.
	stream << "//------------------------------------------------------------------"       << endl;
	stream << "// Class.........: ROSETTAClassifier"                                       << endl;
	stream << "// Author........: Aleksander 豩rn"                                         << endl;
	stream << "// Date..........: " << SystemKit::GetTimestamp()                           << endl;
	stream << "// Description...: Classifies a ROSETTAObject using a collection of"        << endl;
	stream << "//                 if-then rules."                                          << endl;
	stream << "//"                                                                         << endl;
	stream << "//                 The vote count associated with each decision value"      << endl;
	stream << "//                 is returned in-place in an array. To map from array"     << endl;
	stream << "//                 indices to decision values, see the Classify method."    << endl;
	stream << "//"                                                                         << endl;
	stream << "//                 The descriptor matching methods can be altered to"       << endl;
	stream << "//                 allow for tolerant matching."                            << endl;
	stream << "//=================================================================="       << endl;
	stream << endl;
	stream << "class ROSETTAClassifier {"                                                  << endl;
	stream << "protected:"                                                                 << endl;
	stream << endl;
	stream << "  // Descriptor matching methods...................................."       << endl;

	for (i = 0; i < no_attributes; i++) {

		if (!table->IsCondition(i, masked))
			continue;

		String name = StaticGetName(*table, i, masked);

		// Method name.
		stream << "  bool Match" << name << "(";

		int indent = 15;

		// Method arguments and inlined body.
		if (table->IsFloat(i, masked)) {
			stream << "float value1, float value2";
			indent -= 4;
		}
		else
			stream << "int value1, int value2";

		stream << ") const " << String(' ', indent - name.GetLength()) << "{return (value1 == value2);}" << endl;

	}

	stream << endl;
	stream << "public:"                                                                    << endl;
	stream << endl;
	stream << "  // Classification method.........................................."       << endl;
  stream << "  int  Classify(const ROSETTAObject &object, int votes[" << decisionvalues.size() << "]) const;" << endl;
	stream << endl;
	stream << "};"                                                                         << endl;

	// Match the #ifndef section.
	stream << endl;
	stream << "#endif" << endl;
	stream << endl;

	// Write marker.
	stream << "//------------------------------------------------------------------" << endl;
	stream << "// The header (.h) file ends here."                                   << endl;
	stream << "//==================================================================" << endl;
	stream << endl;

	return true;

}

//-------------------------------------------------------------------
// Method........: ExportData
// Author........: Aleksander 豩rn
// Date..........:
// Description...: Exports the implementation (.cpp) file.
// Comments......:
// Revisions.....:
//===================================================================

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品资源站在线| 久久国产精品99精品国产 | 亚洲欧美日韩综合aⅴ视频| 精品国产露脸精彩对白| 日韩午夜av电影| 91精品国产高清一区二区三区 | 在线免费观看视频一区| 91国产免费看| 在线不卡中文字幕| 日韩欧美综合一区| 精品国产乱码久久久久久久| 久久综合久久99| 久久久久久久久久久久久女国产乱| wwwwww.欧美系列| 中文字幕第一区综合| 国产精品国产自产拍在线| 国产精品网友自拍| 一区二区久久久久| 日本中文字幕不卡| 国内欧美视频一区二区| 成人激情午夜影院| 欧美三级视频在线播放| 欧美成人官网二区| 综合自拍亚洲综合图不卡区| 亚洲一区二区三区四区的| 日本91福利区| av在线不卡电影| 宅男在线国产精品| 国产人成亚洲第一网站在线播放| 亚洲欧美怡红院| 美国av一区二区| 91女厕偷拍女厕偷拍高清| 欧美欧美欧美欧美首页| 久久精品亚洲国产奇米99| 亚洲乱码精品一二三四区日韩在线| 视频在线观看一区| 成人av网址在线| 日韩欧美中文字幕精品| 亚洲蜜臀av乱码久久精品蜜桃| 麻豆精品一区二区三区| 91年精品国产| 国产亚洲福利社区一区| 日韩精品一二区| 91蜜桃视频在线| 久久日韩精品一区二区五区| 亚洲精品国产一区二区精华液| 久久国内精品视频| 欧美日韩一区二区三区视频| 久久久精品欧美丰满| 男人的天堂久久精品| 91精彩视频在线观看| 国产三级一区二区三区| 久久精品国产久精国产| 欧美美女视频在线观看| 亚洲欧美日韩国产成人精品影院| 国内精品国产成人| 欧美一区日本一区韩国一区| 亚洲最大色网站| 91麻豆精品一区二区三区| 欧美国产精品专区| 狠狠色丁香久久婷婷综合丁香| 欧美日韩高清一区二区| 亚洲综合色婷婷| 91亚洲精华国产精华精华液| 国产精品美女久久久久久久久久久| 精品一区二区三区久久| 日韩区在线观看| 久久国产麻豆精品| 日韩一区二区三区视频在线观看| 亚洲高清视频在线| 欧美日韩亚洲综合| 同产精品九九九| 欧美日韩国产综合一区二区三区 | 精品日韩在线一区| 美脚の诱脚舐め脚责91| 日韩欧美一区二区在线视频| 免费人成精品欧美精品| 日韩精品专区在线影院重磅| 毛片一区二区三区| 精品国产不卡一区二区三区| 精品一二三四区| 国产视频一区二区在线观看| 成人av网址在线观看| 亚洲四区在线观看| 欧美调教femdomvk| 免费看欧美女人艹b| 精品不卡在线视频| 国产丶欧美丶日本不卡视频| 一区在线播放视频| 在线观看国产一区二区| 日韩精品色哟哟| 精品国产电影一区二区| 成人av在线一区二区| 一区二区三区小说| 欧美区在线观看| 国产乱子伦视频一区二区三区| 亚洲国产高清在线观看视频| 91丝袜美女网| 日本成人在线网站| 欧美激情一区二区三区四区| 色偷偷一区二区三区| 日韩成人伦理电影在线观看| 久久免费视频一区| 欧洲在线/亚洲| 裸体健美xxxx欧美裸体表演| 国产日韩欧美精品综合| 91国内精品野花午夜精品| 久久国产精品99精品国产| 亚洲人吸女人奶水| 日韩一区二区三区在线视频| 99久久免费国产| 青青草97国产精品免费观看| 中日韩av电影| 欧美一区日本一区韩国一区| 99精品欧美一区二区蜜桃免费| 日本怡春院一区二区| 亚洲视频一二三区| 精品国产免费一区二区三区四区| 在线观看日韩电影| 成人性生交大片免费看中文| 爽好多水快深点欧美视频| 国产精品白丝在线| www久久精品| 欧美日韩一区不卡| 91蜜桃视频在线| 成人在线综合网| 久久丁香综合五月国产三级网站| 一级做a爱片久久| 欧美经典一区二区| 欧美精品一区二区高清在线观看 | 久久久久青草大香线综合精品| 在线观看视频一区二区 | 婷婷久久综合九色综合伊人色| 日本一区二区成人在线| 日韩午夜精品视频| 欧美日韩和欧美的一区二区| 99久久精品国产毛片| 高清在线观看日韩| 狠狠色丁香婷婷综合久久片| 蜜臀91精品一区二区三区| 一区二区三区丝袜| 亚洲狼人国产精品| 亚洲人成亚洲人成在线观看图片| 国产欧美日韩中文久久| 精品国产一区二区三区av性色| 日韩三级视频中文字幕| 日韩一区二区电影在线| 91精品中文字幕一区二区三区| 欧美久久久久久久久中文字幕| 在线观看亚洲一区| 欧美日韩精品一区视频| 欧美日本不卡视频| 日韩视频一区二区在线观看| 欧美一卡在线观看| 欧美mv日韩mv亚洲| 久久免费看少妇高潮| 国产精品青草综合久久久久99| 国产日产亚洲精品系列| 久久久不卡网国产精品一区| 国产三级一区二区三区| 中文字幕在线不卡| 亚洲成人自拍网| 日韩av一区二区三区四区| 麻豆精品一区二区综合av| 激情文学综合插| jiyouzz国产精品久久| 一本久久综合亚洲鲁鲁五月天 | 欧美日韩成人在线| 日韩午夜激情视频| 欧美国产日韩一二三区| 亚洲欧美激情在线| 青青草国产成人99久久| 国产成人在线视频免费播放| 91免费版在线看| 欧美日韩日日骚| 久久久久久综合| 一区二区三区成人| 看电视剧不卡顿的网站| 国产麻豆精品95视频| 在线精品视频免费播放| 精品999在线播放| 亚洲天天做日日做天天谢日日欢 | 成人性生交大合| 欧美日韩国产123区| 国产亚洲一区字幕| 亚洲一区国产视频| 国产白丝精品91爽爽久久| 日本高清不卡视频| 久久精品欧美日韩精品| 亚洲成人综合视频| 国产91精品精华液一区二区三区 | 日韩二区三区四区| 国产99久久久国产精品| 91精品中文字幕一区二区三区| 亚洲国产精品ⅴa在线观看| 日韩精品一区第一页| 不卡一区中文字幕| www国产精品av| 日本欧美加勒比视频| 色天天综合久久久久综合片|