/*
 * Copyright (c) 1999 Johnny C. Lam.
 * All rights reserved.
 *
 * Permission to use, copy, modify, distribute and sell this software
 * and its documentation for any purpose is hereby granted without fee,
 * provided that the above copyright notice appear in all copies and
 * that both that copyright notice and this permission notice appear
 * in supporting documentation.  The author makes no representations
 * about the suitability of this software for any purpose.  It is
 * provided "as is" without express or implied warranty.
 */

/* -*- C++ -*- */

#ifndef STL_INTERNAL_GRAPH_TREE_H
#define STL_INTERNAL_GRAPH_TREE_H

#ifndef STD_IOSFWD_INCLUDED
#include <iosfwd>
#define STD_IOSFWD_INCLUDED
#endif

#ifndef STD_STRING_INCLUDED
#include <string>
#define STD_STRING_INCLUDED
#endif

template <class Tree>
void	WriteTreeTopology(ostream&, const Tree&,
			  const typename graph_traits<Tree>::node_type&,
			  const string& = "");

template <class Tree>
void	WriteRootedTree(ostream&, const Tree&,
			const typename graph_traits<Tree>::node_type&);

#include <stl_graph_tree_inline.h>
#include <stl_graph_tree.cc>

#endif /* STL_INTERNAL_GRAPH_TREE_H */
