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

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

?? annotatedstructure.cpp

?? 粗慥集成算法集合 ,并有詳細的文檔資料和測試數據處
?? CPP
字號:
//-------------------------------------------------------------------
// Author........: Aleksander 豩rn
// Date..........:
// Description...: An annotated structure is a structure with an
//                 annotation object attached to it.
// Revisions.....:
//===================================================================

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

#include <kernel/structures/annotatedstructure.h>
#include <kernel/structures/annotation.h>

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

//-------------------------------------------------------------------
// Methods for class AnnotatedStructure.
//===================================================================

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

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

	if (in.IsAnnotated())
		annotation_ = dynamic_cast(Annotation *, in.GetAnnotation()->Duplicate());
	else
		annotation_ = NULL;

}

AnnotatedStructure::AnnotatedStructure() {
	annotation_ = Creator::Annotation();
}

AnnotatedStructure::~AnnotatedStructure() {
}

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

IMPLEMENTIDMETHODS(AnnotatedStructure, ANNOTATEDSTRUCTURE, Structure)

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

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

bool
AnnotatedStructure::Load(ifstream &stream) {

	if (!Structure::Load(stream))
		return false;

	bool is_annotated;

	// Load annotation presence flag.
	if (!IOKit::Load(stream, is_annotated))
		return false;

	if (is_annotated)
		SetAnnotation(Creator::Annotation());
	else
		SetAnnotation(NULL);

	// Load annotation, if present.
	if (is_annotated && !GetAnnotation()->Load(stream))
		return false;

  return true;

}

//-------------------------------------------------------------------
// Method........: Save
// Author........:
// Date..........:
// Description...:
// Revisions.....:
//===================================================================

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

	if (!Structure::Save(stream))
		return false;

	// Save annotation presence flag.
	if (!IOKit::Save(stream, IsAnnotated()))
		return false;

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

	// Save annotation, if present.
	if (IsAnnotated() && !GetAnnotation()->Save(stream))
		return false;

	return true;

}

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

bool
AnnotatedStructure::Load(const String &filename) {

	if (!Persistent::Load(filename))
		return false;

	// Set default filename/location.
	if (IsAnnotated())
		GetAnnotation()->SetFilename(filename);

	return true;

}

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

bool
AnnotatedStructure::Save(const String &filename) const {

	if (!Persistent::Save(filename))
		return false;

	// Set default filename/location.
	if (IsAnnotated())
		GetAnnotation()->SetFilename(filename);

	return true;

}

//-------------------------------------------------------------------
// Method........: Load
// Author........:
// Date..........:
// Description...: Loads from default filename/location.
// Comments......:
// Revisions.....:
//===================================================================

bool
AnnotatedStructure::Load() {

	if (IsAnnotated())
		return Load(GetAnnotation()->GetFilename());

	return false;

}

//-------------------------------------------------------------------
// Method........: Save
// Author........:
// Date..........:
// Description...: Saves to default filename/location.
// Comments......:
// Revisions.....:
//===================================================================

bool
AnnotatedStructure::Save() const {

	if (IsAnnotated())
		return Save(GetAnnotation()->GetFilename());

	return false;

}

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

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

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

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

void
AnnotatedStructure::Clear() {

	if (IsAnnotated())
		GetAnnotation()->Clear();

}

//-------------------------------------------------------------------
// Method........: GetName
// Author........: Aleksander 豩rn
// Date..........:
// Description...: Returns the name of the structure.
// Comments......: Overloads default behaviour.
// Revisions.....:
//===================================================================

const String &
AnnotatedStructure::GetName() const {

	if (IsAnnotated())
		return GetAnnotation()->GetName();

	return Structure::GetName();

}

//-------------------------------------------------------------------
// Method........: SetName
// Author........: Aleksander 豩rn
// Date..........:
// Description...: Sets the name of the structure.
// Comments......: Overloads default behaviour.
// Revisions.....:
//===================================================================

bool
AnnotatedStructure::SetName(const String &name) {

	if (!IsAnnotated())
		return false;

	return GetAnnotation()->SetName(name);

}

//-------------------------------------------------------------------
// Local methods.
//===================================================================

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

Annotation *
AnnotatedStructure::GetAnnotation() const {
	return const_cast(Annotation *, annotation_.GetPointer());
}

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

bool
AnnotatedStructure::SetAnnotation(Annotation *annotation)  {

	annotation_ = annotation;

	return true;

}

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

bool
AnnotatedStructure::Touch(const String &action) {

	if (IsAnnotated())
		return GetAnnotation()->Touch(action);

	return false;

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美曰成人黄网| 亚洲欧美日韩人成在线播放| 欧美一区二区三区小说| 欧美日韩高清在线| 欧美日韩免费观看一区三区| 欧美最新大片在线看| 欧洲亚洲国产日韩| 欧美日韩大陆一区二区| 91精品综合久久久久久| 日韩免费观看高清完整版| 日韩无一区二区| 精品国产第一区二区三区观看体验| 日韩一区二区三免费高清| 久久综合网色—综合色88| 久久精品视频在线看| 国产精品久久久久四虎| 亚洲三级在线免费| 亚洲国产日韩综合久久精品| 日韩电影在线一区二区三区| 久久aⅴ国产欧美74aaa| 国产电影精品久久禁18| 99久久精品国产毛片| 日本高清无吗v一区| 7777精品伊人久久久大香线蕉完整版 | 中文字幕一区二区三区四区| 综合av第一页| 亚洲大片免费看| 美腿丝袜一区二区三区| 国产91富婆露脸刺激对白| 色综合天天综合狠狠| 欧美日韩成人一区| 日韩欧美你懂的| 国产欧美视频在线观看| 一区二区三区四区五区视频在线观看| 亚洲一区二区在线播放相泽| 人人爽香蕉精品| 丰满亚洲少妇av| 色婷婷国产精品| 欧美一区二区黄| 欧美激情一区三区| 亚洲一区二区精品视频| 久久精品国产**网站演员| av网站一区二区三区| 91麻豆精品国产91久久久使用方法| 欧美精品一区二区在线播放| 亚洲精品日日夜夜| 国产一区啦啦啦在线观看| 91免费观看视频在线| 欧美一三区三区四区免费在线看| 国产欧美视频一区二区三区| 亚洲第一精品在线| 国产精品99久| 欧美精品久久99久久在免费线 | 亚洲欧美一区二区久久| 毛片基地黄久久久久久天堂| 99久久国产综合色|国产精品| 欧美一区二区三区爱爱| ...av二区三区久久精品| 免费观看久久久4p| 色婷婷亚洲一区二区三区| 精品国产乱码久久久久久闺蜜| 亚洲色图.com| 国产aⅴ综合色| 欧美精品第一页| 自拍偷拍亚洲激情| 国产乱国产乱300精品| 欧美日韩五月天| 国产精品毛片久久久久久| 美国欧美日韩国产在线播放| 在线观看国产精品网站| 国产精品午夜在线观看| 麻豆国产精品一区二区三区| 欧美性xxxxx极品少妇| 中文欧美字幕免费| 国产一区欧美二区| 欧美一区二区三区人| 亚洲综合男人的天堂| 99久免费精品视频在线观看| 精品久久久久久久一区二区蜜臀| 亚洲成人在线网站| 色综合网站在线| 亚洲欧洲精品成人久久奇米网| 黄色资源网久久资源365| 欧美日本一区二区三区四区 | 国产一区不卡视频| 91精品国产综合久久小美女| 亚洲狠狠爱一区二区三区| 91视视频在线直接观看在线看网页在线看| 久久伊99综合婷婷久久伊| 青青草97国产精品免费观看 | 欧美日韩一区二区三区免费看| 日本一区二区免费在线| 狠狠色综合播放一区二区| 欧美精品国产精品| 亚洲18女电影在线观看| 欧美视频在线播放| 亚洲综合视频网| 一本大道av一区二区在线播放| 国产精品色婷婷久久58| 国产.精品.日韩.另类.中文.在线.播放 | 日本高清不卡视频| 亚洲精品成人少妇| 色婷婷av一区二区三区大白胸| 亚洲视频在线一区二区| 99re6这里只有精品视频在线观看 99re8在线精品视频免费播放 | 久久99国产精品久久99| 欧美一级片在线观看| 喷水一区二区三区| 日韩一区二区三区高清免费看看 | 99国内精品久久| 亚洲精品中文在线影院| 91在线观看高清| 亚洲男人天堂av网| 在线一区二区观看| 亚洲伊人色欲综合网| 欧美日韩一二三区| 免费成人深夜小野草| 日韩免费一区二区| 国产电影精品久久禁18| 国产精品第五页| 欧洲人成人精品| 亚洲va中文字幕| 欧美电影免费观看高清完整版| 国产在线乱码一区二区三区| 亚洲国产精品t66y| 色香色香欲天天天影视综合网| 亚洲线精品一区二区三区八戒| 欧美午夜一区二区| 免费成人结看片| 精品久久久久99| 成人动漫一区二区| 一区二区三区国产精华| 日韩欧美综合一区| 国产成人日日夜夜| 亚洲精选在线视频| 91麻豆精品国产91久久久资源速度 | 久久亚洲一区二区三区四区| 国产超碰在线一区| 亚洲一区二区在线免费看| 日韩欧美第一区| 成人激情黄色小说| 亚洲成人精品一区| 欧美成人伊人久久综合网| 成人午夜电影网站| 午夜私人影院久久久久| 26uuu精品一区二区在线观看| a在线欧美一区| 天天亚洲美女在线视频| 日本一区二区免费在线观看视频 | 亚洲少妇屁股交4| 欧美日本在线播放| 国产91在线|亚洲| 偷拍亚洲欧洲综合| 国产亚洲欧美一级| 欧美日韩大陆一区二区| 国产69精品一区二区亚洲孕妇| 午夜精品福利在线| 国产精品乱码人人做人人爱 | 久久久www免费人成精品| 91热门视频在线观看| 日韩 欧美一区二区三区| 国产精品久久久久三级| 日韩欧美一区在线| 色诱视频网站一区| 国产美女娇喘av呻吟久久 | 日本国产一区二区| 国产一区二区三区免费看| 亚洲国产精品久久久久婷婷884 | 欧美午夜在线一二页| 国产aⅴ精品一区二区三区色成熟| 天堂影院一区二区| 亚洲欧美日韩小说| 国产亚洲va综合人人澡精品 | 亚洲不卡av一区二区三区| 久久久精品tv| 91精品国产福利在线观看| 91原创在线视频| 精品一区二区成人精品| 午夜a成v人精品| 亚洲天堂精品在线观看| 国产亚洲综合性久久久影院| 欧美高清www午色夜在线视频| 色欧美片视频在线观看在线视频| 狠狠色狠狠色综合系列| 日本在线不卡视频| 亚洲成a人片在线不卡一二三区 | 日韩精品色哟哟| 亚洲韩国一区二区三区| 亚洲色大成网站www久久九九| 国产欧美一区二区精品仙草咪| 日韩精品在线一区| 日韩欧美国产小视频| 日韩一区二区三区观看| 这里是久久伊人| 69堂精品视频| 欧美精品在线观看一区二区| 欧美三级欧美一级| 欧美日韩的一区二区| 欧美在线色视频| 欧美图片一区二区三区|