include/topology/conesimplex.hpp
author Dmitriy Morozov <dmitriy@mrzv.org>
Tue, 23 Dec 2008 11:40:38 -0800
branchdev
changeset 101 9efac05d629b
parent 22 c42734397d62
permissions -rw-r--r--
Changed Simplex::boundary() to be iterator-based (replaced it with boundary_begin() and boundary_end())

template<class S>
typename ConeSimplex<S>::Cycle
ConeSimplex<S>::boundary() const
{
	Cycle bdry;
	typename Parent::Cycle pbdry = Parent::boundary();

	for (typename Parent::Cycle::const_iterator cur = pbdry.begin(); cur != pbdry.end(); ++cur)
		bdry.push_back(Self(*cur, coned_));
	
	if (coned_)
		bdry.push_back(Self(*this, false));
	
	return bdry;
}

template<class S>
std::ostream&
ConeSimplex<S>::operator<<(std::ostream& out) const
{
	Parent::operator<<(out) << ' ';
	if (coned_) out << "[coned]";
	return out;
}