Doxygen (was Re: Proposed man pages: <vector> sample, RFC)
george@moberg.com
george@moberg.com
Tue Nov 14 09:35:00 GMT 2000
Benjamin Kosnik wrote:
>
> > I just looked at doxygen for our project here, and it looks like it
> > works really good. It was rather easy to set up with the graphical
> > wizard. Definitely download the optional package from AT&T Research for
> > the inheritance and collaboration graphs.
>
> could you please provide a URL for the optional packages?
http://www.research.att.com/sw/tools/graphviz/
> Also, is there
> anyway you could provide an example image for either or both of the graphs?
Attached. What you see above is running doxygen with the optional AT&T
dot stuff to generate the diagrams. Ignore the actual class
documentation stuff, as I didn't add any comments to the libstdc++ stuff
for doxygen to pick up. What I'm attempting to illustrate is the graphs
that this can produce without any tweaking or anything. Basically I
told the tool where the source files were and to just go for it.
> > On an unrelated note, will the new snapshot (2.90.9) be compilable under
> > gcc 2.95.2?
>
> Err....2.91, you mean!
>
> Here's hoping.
I'm slow...you mean "Err....2.91 [that will be released Fridayish or
so], you mean!" and not "Err....2.91 [that will be some subsequent
release after the Fridayish release], you mean!", right?
--
George T. Talbot
<george at moberg dot com>
Title: std::basic_iostream Template Class Reference
Main Page ÃÂ Namespace List ÃÂ Class Hierarchy ÃÂ Compound List ÃÂ File List ÃÂ Namespace Members ÃÂ Compound Members ÃÂ File Members ÃÂ
std::basic_iostream Template Class Reference #include < std_istream.h >
Inheritance diagram for std::basic_iostream
[ legend ] Collaboration diagram for std::basic_iostream:
[ legend ] List of all members.
Public Types
typedef basic_istream <_CharT,
_Traits>ÃÂ __istream_type
typedef basic_ostream <_CharT,
_Traits>ÃÂ __ostream_type
Public Methods
ÃÂ basic_iostream ( basic_streambuf <_CharT, _Traits>* __sb)
virtualÃÂ ~basic_iostream ()
Member Typedef Documentation
template<typename_CharT, typename_Traits>
typedef basic_istream <_CharT, _Traits> std::basic_iostream<_CharT, _Traits>::__istream_type
ÃÂ
Reimplemented from std::basic_istream .
Definition at line 273 of file std_istream.h .
template<typename_CharT, typename_Traits>
typedef basic_ostream <_CharT, _Traits> std::basic_iostream<_CharT, _Traits>::__ostream_type
ÃÂ
Reimplemented from std::basic_ostream .
Definition at line 274 of file std_istream.h .
Constructor & Destructor Documentation
template<typename_CharT, typename_Traits>
std::basic_iostream<_CharT, _Traits>::basic_iostream<_CharT, _Traits> (
basic_streambuf < _CharT,_Traits >* __sb ÃÂ ) [explicit]
ÃÂ
Definition at line 277 of file std_istream.h .
template<typename_CharT, typename_Traits>
std::basic_iostream<_CharT, _Traits>::~basic_iostream<_CharT, _Traits> (
) [inline, virtual]
ÃÂ
Definition at line 282 of file std_istream.h .
The documentation for this class was generated from the following file:
std_istream.h
Generated at Tue Nov 14 11:54:05 2000 for Standard C++ Library by
1.2.1 written by Dimitri van Heesch ,
éà1997-2000
Title: Member List
Main Page ÃÂ Namespace List ÃÂ Class Hierarchy ÃÂ Compound List ÃÂ File List ÃÂ Namespace Members ÃÂ Compound Members ÃÂ File Members ÃÂ
std::basic_iostream Member List This is the complete list of members for std::basic_iostream , including all inherited members.
std::__ctype_type typedef
std::basic_ostream::__ctype_type typedef
std::__ios_type typedef
std::basic_ostream::__ios_type typedef
__istream_type typedef
__istreambuf_iter typedef
__numget_type typedef
std::__numput_type typedef
std::basic_ostream::__numput_type typedef
__ostream_type typedef
std::__ostreambuf_iter typedef
std::basic_ostream::__ostreambuf_iter typedef
std::__streambuf_type typedef
std::basic_ostream::__streambuf_type typedef
_M_call_callbacks (event __ev)
[protected] _M_callbacks
[protected] _M_dispose_callbacks (void)
[protected] _M_dummy
[protected] _M_fctype_ios
[protected] _M_flags
[protected] _M_fnumget
[protected] _M_fnumput
[protected] _M_gcount
[protected] _M_get_fctype_ios (void)
[inline] _M_get_fnumget (void)
[inline] _M_get_fnumput (void)
[inline] _M_grow_words (int __index)
[protected] _M_init ()
[protected] _M_locale_ios
[protected] _M_precision
[protected] _M_streambuf
[protected] _M_streambuf_state
[protected] _M_width
[protected] _M_word_array
[protected] _M_word_limit
[protected] _M_words
[protected] _S_local_words
[protected, static] adjustfield
[static] app
[static] ate
[static] bad () const
[inline] badbit
[static] basefield
[static] basic_ios (basic_streambuf<_CharT, _Traits>* __sb)
[explicit] basic_ios ()
[protected] basic_iostream (basic_streambuf<_CharT, _Traits>* __sb)
[explicit] basic_istream (__streambuf_type* __sb)
[inline, explicit] basic_ostream (__streambuf_type* __sb)
[inline, explicit] beg
[static] binary
[static] boolalpha
[static] std::char_type typedef
std::basic_ostream::char_type typedef
clear (iostate __state = goodbit)
[inline] copyfmt (const basic_ios& __rhs)
copyfmt_event enum value
cur
[static] dec
[static] end
[static] eof () const
[inline] eofbit
[static] erase_event enum value
event enum name
event_callback typedef
exceptions () const
[inline] exceptions (iostate __except)
[inline] fail () const
[inline] failbit
[static] fill () const
[inline] fill (char_type __ch)
[inline] fixed
[static] flags () const
[inline] flags (fmtflags __fmtfl)
[inline] floatfield
[static] flush ()
fmtflags typedef
gcount (void) const
[inline] get (void)
get (char_type& __c)
get (char_type* __s, streamsize __n, char_type __delim)
get (char_type* __s, streamsize __n)
[inline] get (__streambuf_type& __sb, char_type __delim)
get (__streambuf_type& __sb)
[inline] getline (char_type* __s, streamsize __n, char_type __delim)
getline (char_type* __s, streamsize __n)
[inline] getloc () const
[inline] good () const
[inline] goodbit
[static] hex
[static] ignore (streamsize __n = 1, int_type __delim = traits_type::eof())
imbue (const locale& __loc)
imbue_event enum value
in
[static] init (basic_streambuf<_CharT, _Traits>* __sb)
[protected] std::int_type typedef
std::basic_ostream::int_type typedef
internal
[static] ios_base ()
[protected] iostate typedef
iword (int __ix)
[inline] left
[static] narrow (char_type __c, char __dfault) const
oct
[static] std::off_type typedef
std::basic_ostream::off_type typedef
openmode typedef
operator void * () const
[inline] operator! () const
[inline] operator<< (__ostream_type& (*__pf)(__ostream_type&))
operator<< (__ios_type& (*__pf)(__ios_type&))
operator<< (ios_base& (*__pf) (ios_base&))
operator<< (long __n)
operator<< (unsigned long __n)
operator<< (bool __n)
operator<< (short __n)
[inline] operator<< (unsigned short __n)
[inline] operator<< (int __n)
[inline] operator<< (unsigned int __n)
[inline] operator<< (double __f)
operator<< (float __f)
[inline] operator<< (long double __f)
operator<< (const void* __p)
operator<< (__streambuf_type* __sb)
operator>> (__istream_type& (*__pf)(__istream_type&))
operator>> (__ios_type& (*__pf)(__ios_type&))
operator>> (ios_base& (*__pf)(ios_base&))
operator>> (bool& __n)
operator>> (short& __n)
operator>> (unsigned short& __n)
operator>> (int& __n)
operator>> (unsigned int& __n)
operator>> (long& __n)
operator>> (unsigned long& __n)
operator>> (float& __f)
operator>> (double& __f)
operator>> (long double& __f)
operator>> (void*& __p)
operator>> (__streambuf_type* __sb)
out
[static] peek (void)
std::pos_type typedef
std::basic_ostream::pos_type typedef
precision () const
[inline] precision (streamsize __prec)
[inline] put (char_type __c)
putback (char_type __c)
pword (int __ix)
[inline] rdbuf () const
[inline] rdbuf (basic_streambuf<_CharT, _Traits>* __sb)
rdstate () const
[inline] read (char_type* __s, streamsize __n)
readsome (char_type* __s, streamsize __n)
register_callback (event_callback __fn, int __index)
right
[static] scientific
[static] seekdir typedef
seekg (pos_type)
seekg (off_type, ios_base::seekdir)
seekp (pos_type)
seekp (off_type, ios_base::seekdir)
std::sentry class
[friend] std::basic_ostream::sentry class
[friend] setf (fmtflags __fmtfl)
[inline] setf (fmtflags __fmtfl, fmtflags __mask)
[inline] setstate (iostate __state)
[inline] showbase
[static] showpoint
[static] showpos
[static] skipws
[static] sync (void)
sync_with_stdio (bool __sync = true)
[static] tellg (void)
tellp ()
tie () const
[inline] tie (basic_ostream<_CharT, _Traits>* __tiestr)
[inline] std::traits_type typedef
std::basic_ostream::traits_type typedef
trunc
[static] unget (void)
unitbuf
[static] unsetf (fmtflags __mask)
[inline] uppercase
[static] widen (char __c) const
width () const
[inline] width (streamsize __wide)
[inline] write (const char_type* __s, streamsize __n)
xalloc ()
[static] ~basic_ios ()
[inline, virtual] ~basic_iostream ()
[inline, virtual] ~basic_istream ()
[inline, virtual] ~basic_ostream ()
[inline, virtual] ~ios_base ()
Generated at Tue Nov 14 11:54:05 2000 for Standard C++ Library by
1.2.1 written by Dimitri van Heesch ,
éà1997-2000
Title: Graph Legend
Main Page ÃÂ Namespace List ÃÂ Class Hierarchy ÃÂ Compound List ÃÂ File List ÃÂ Namespace Members ÃÂ Compound Members ÃÂ File Members ÃÂ
Graph Legend This page explains how to interpret the graphs that are generated by doxygen.
Consider the following example: /*! Invisible class because of truncation */
class Invisible { };
/*! Truncated class, inheritance relation is hidden */
class Truncated : public Invisible { };
/* Class not documented with doxygen comments */
class Undocumented { };
/*! Class that is inherited using public inheritance */
class PublicBase : public Truncated { };
/*! Class that is inherited using protected inheritance */
class ProtectedBase { };
/*! Class that is inherited using private inheritance */
class PrivateBase { };
/*! Class that is used by the Inherited class */
class Used { };
/*! Super class that inherits a number of other classes */
class Inherited : public PublicBase,
protected ProtectedBase,
private PrivateBase,
public Undocumented
{
private :
Used *m_usedClass;
}; If the MAX_DOT_GRAPH_HEIGHT tag in the configuration file is set to 200 this will result in the following graph:
The boxes in the above graph have the following meaning:
A filled black box represents the struct or class for which the graph is generated. A box with a black border denotes a documented struct or class. A box with a grey border denotes an undocumented struct or class. A box with a red border denotes a documented struct or class for which not all inheritance/containment relations are shown. A graph is truncated if it does not fit within the specified boundaries.
The arrows have the following meaning:
A dark blue arrow is used to visualize a public inheritance relation between two classes. A dark green arrow is used for protected inheritance. A dark red arrow is used for private inheritance. A purple dashed arrow is used if a class is contained or used by another class. The arrow is labeled with the variable(s) through which the pointed class or struct is accessible.
Generated at Tue Nov 14 11:54:43 2000 for Standard C++ Library by
1.2.1 written by Dimitri van Heesch ,
éà1997-2000
More information about the Libstdc++
mailing list