Better comment for new shared library feature

This commit is contained in:
Marc Wäckerlin
2004-10-11 16:49:32 +00:00
parent 5b2783e877
commit 529409a82a

View File

@@ -9,6 +9,9 @@
@license LGPL, see file <a href="license.html">COPYING</a>
$Log$
Revision 1.8 2004/10/11 16:49:32 marc
Better comment for new shared library feature
Revision 1.7 2004/10/11 15:58:51 marc
First version with working support for shared libraries!
@@ -187,30 +190,41 @@ namespace mrw {
static CodePos translate(void* addr)
throw(std::bad_exception);
/** @brief read the symbol table from the executable file
/** @brief read the symbol table from the executable file or a
shared library
@param fname The file name of the executable. On Linux
and Solaris, this can be evaluated automatically, so the
parameter is optional.
On Solaris and Linux, the name of the executable is
automatically detected through the @c /dev/proc file
system. Only on Linux the shared libraries are detected
through a call to @c ldd. So you may leave the parameter
empty on these systems.
@param fname The file name of the executable or a shared
library. On Linux and Solaris, this can be evaluated
automatically, so the parameter is optional.
@param offs Offset of the address space. It is 0 for
executables, but must be given for shared libraries.
executables, but must be given for shared libraries. Use @c
ldd on the executable to find out the offset.
@return @c true in case of success. If @c false is returned,
the symbol table was not read and the evaluation cannot be
done. Printing then only prints the raw addresses, without
file, line nmber information and method names.
@note This method must be executed once before a stack trace
is printed the very first time. For storing a stack trace
(that means for the creation of a mrw::StackTrace object) a
call to this method is not yet needed.
@note createSymtable must be executed at least once before a
stack trace is printed the very first time. For storing a
stack trace (that means for the creation of a
mrw::StackTrace object) a call to this method is not yet
needed.
@note Call only one of both createSymtable methods!
@note In general, call only one of both createSymtable
methods! But instead of callin the other method once, you
may also call this one several times.
@note If this method is called more than once, the symbols
are created only the first time, so you don't loose too much
time.
@note If this method is called more than once for the same
file, the symbols are created only the first time, so you
don't loose too much time.
*/
static bool createSymtable(const std::string& fname="", void* offs=0)
throw(std::bad_exception);
@@ -234,11 +248,10 @@ namespace mrw {
(that means for the creation of a mrw::StackTrace object) a
call to this method is not yet needed.
@note Call only one of both createSymtable methods!
@note In general, call only one of both createSymtable methods!
@note If this method is called more than once, the symbols
are created only the first time, so you don't loose too much
time.
@note This method calls the other one for all files in
parameter @c files.
*/
static bool createSymtable(const BinFiles& files) throw(std::bad_exception);