当前位置: 首页>>代码示例>>C++>>正文


C++ path::_BOOST_FS_NATIVE方法代码示例

本文整理汇总了C++中boost::filesystem::path::_BOOST_FS_NATIVE方法的典型用法代码示例。如果您正苦于以下问题:C++ path::_BOOST_FS_NATIVE方法的具体用法?C++ path::_BOOST_FS_NATIVE怎么用?C++ path::_BOOST_FS_NATIVE使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在boost::filesystem::path的用法示例。


在下文中一共展示了path::_BOOST_FS_NATIVE方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: doc

void
build_svg(
	const fs::path & file,
	const string & title,
	const seq_t & seq,
	float_t min_threshold,
	match_result_vec_t & results,
	size_t max_num_factors,
	bool show_labels,
	bool open,
	match_result_vec_t * max_chain,
	const std::string & notes,
	float max_threshold )
{
	XMLPlatformUtils::Initialize();

	//find the maximum score
	for (match_result_vec_t::const_iterator i = results.begin();
		results.end() != i;
		++i)
	{
		max_threshold = std::max( max_threshold, i->result.score );
	}

	SvgDomDocument doc(seq.size(), min_threshold, max_threshold, title, seq, show_labels);

	//for each hit result
	size_t idx = 0;
	unsigned num_added = 0;
	for (match_result_vec_t::iterator i = results.begin();
		results.end() != i;
		++i, ++idx)
	{
		i->number = idx;

		BiobaseTablePssmEntry * pssm_entry = BiobaseDb::singleton().get_pssm_entry(i->link);

		assert((size_t) i->result.position < seq.size());

		if (min_threshold <= i->result.score)
		{
			const bool is_in_max_chain =
				0 != max_chain
				&&
				max_chain->end() != std::find_if( max_chain->begin(), max_chain->end(), std::bind1st( detail::hit_is_same(), *i ) );

			doc.add_result(
				i->result,
				*pssm_entry,
				idx,
				is_in_max_chain );
			++num_added;
		}
	}
	if (0 == num_added)
	{
		throw std::logic_error( "No hits above threshold" );
	}

	factor_scores_map_t factors;
	find_factors_for_matches(results, factors);
	//cout << factors.size() << " factors associated with these matches" << std::endl;

	//for each factor - in score order
	while (! factors.empty() && 0 != max_num_factors--)
	{
		//find the factor with the highest score
		factor_scores_map_t::iterator best = factors.end();
		for (factor_scores_map_t::iterator f = factors.begin();
			factors.end() != f;
			++f)
		{
			if (factors.end() == best || f->second.score > best->second.score)
			{
				best = f;
			}
		}
		assert(best != factors.end());

		Factor * factor = BiobaseDb::singleton().get_entry<FACTOR_DATA>(best->first);
		if (0 != factor)
		{
			doc.add_factor(factor, best->second.hits);
		}

		factors.erase(best);
	}

	if( notes.size() )
	{
		doc.add_notes( notes );
	}

	add_tooltip_support(doc.doc, doc.doc_root);

	dom_print(doc.doc, file._BOOST_FS_NATIVE().c_str());

	//copy the script to the same directory
	try
	{
//.........这里部分代码省略.........
开发者ID:JohnReid,项目名称:biopsy,代码行数:101,代码来源:run_matches.cpp


注:本文中的boost::filesystem::path::_BOOST_FS_NATIVE方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。