Play around with doxygen a bit more, since I don't want to give up on it just yet.

Started 'copying' some comments from the String.cpp file. 

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19642 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Niels Sascha Reedijk 2006-12-27 17:46:38 +00:00
parent b57dc167f4
commit 515dc58881
6 changed files with 597 additions and 6 deletions

View File

@ -23,7 +23,7 @@ PROJECT_NAME = "The Haiku Book"
# This could be handy for archiving the generated documentation or
# if some version control system is used.
PROJECT_NUMBER = R1
PROJECT_NUMBER = pre-R1
# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
# base path where the generated documentation will be put.
@ -307,7 +307,7 @@ HIDE_SCOPE_NAMES = NO
# will put a list of the files that are included by a file in the documentation
# of that file.
SHOW_INCLUDE_FILES = YES
SHOW_INCLUDE_FILES = NO
# If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
# is inserted in the documentation for inline members.
@ -326,7 +326,7 @@ SORT_MEMBER_DOCS = YES
# by member name. If set to NO (the default) the members will appear in
# declaration order.
SORT_BRIEF_DOCS = NO
SORT_BRIEF_DOCS = YES
# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be
# sorted by fully-qualified names, including namespaces. If set to
@ -464,8 +464,8 @@ INPUT = . \
midi2 \
support \
../../headers/os/midi2 \
../../headers/os/support/parsedate.h \
../../headers/posix/syslog.h
../../headers/os/support \
../../headers/posix/syslog.h
# If the value of the INPUT tag contains directories, you can use the
# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp

View File

@ -0,0 +1,84 @@
/*!
\file StopWatch.h
\ingroup support
\ingroup libbe
\brief Provides the BStopWatch class.
*/
/*!
\class BStopWatch
\ingroup support
\ingroup libbe
\brief A timer class.
This class provides method to time events. The interface is designed to behave like a physical stopwatch. It is especially useful for debugging certain parts of your code, since it can behave like a 'cheap' profiler.
*/
/*!
\fn BStopWatch::BStopWatch(const char *name, bool silent)
\brief Constructs a BStopWatch object and starts the timer.
The constructor creates a clean BStopWatch object. This object
can be given a name. As soon as the object is created, the time
will start ticking away. This class is designed to be usuable as a primitive profiling tool.
If you are profiling your code with this class, pass true as the
silentparameter. Whenever the object is destroyed, information on
the elapsed time will be streamed to standard output.
\param name The name you want to give this object. You may pass NULL.
\param silent Pass true if you want to use this object as a simple profiler.
*/
/*!
\fn BStopWatch::~BStopWatch()
Destroys the object. If the object was constructed with the parameter
silent set t to false, this destructor will print
information on the elapsed time to standard output.
*/
/*!
\fn void BStopWatch::Resume()
\brief Resumes the timer when it is in a suspended state.
\sa Suspend()
*/
/*!
\fn void BStopWatch::Suspend()
\brief Suspends the timer.
\sa Resume()
*/
/*!
\fn bigtime_t BStopWatch::Lap()
\brief Start a new lap.
This method sets a lap. With the current implementation you are unable to actually
retrieve the timings of the laps. This is only printed to the standard output when the
object is destroyed. Thus making this tool only usuable for use when doing some
profiling.
\attention Please note that the current implementation is limited to 10 laps. The value returned
is the time that has passed since the timer was started (and not the time that has
passed since the last lap). Any lap call beyond the 10th lap will overwrite the last
value. Note that if the timer is suspended, nothing happens and the method will return 0.
*/
/*!
\fn bigtime_t BStopWatch::ElapsedTime() const
\brief Get the elapsed time the object has counted.
\return The elapsed time in microseconds.
*/
/*!
\fn void BStopWatch::Reset()
\brief Restart the timer
Resets the object: it clears the start time, it clears the stored laps and it restarts
the timer.
*/
/*!
\fn const char *BStopWatch::Name() const
\brief Get the name
\return the name given to the object at creation time.
*/

View File

@ -0,0 +1,186 @@
/*!
\file String.h
\ingroup libbe
\ingroup support
\brief Implements the BString class.
*/
/*!
\class BString
\ingroup support
\ingroup libbe
\brief String class supporting common string operations.
BString is a string allocation and manipulation class. The object
takes care to allocate and free memory for you, so it will always be
"big enough" to store your strings.
\author <a href='mailto:mflerackers@androme.be>Marc Flerackers</a>
\author <a href='mailto:burton666@freemail.it>Stefano Ceccherini</a>
\author <a href='mailto:openbeos@hirschaefer.de>Oliver Tappe</a>
*/
/*!
\var char* BString::_privateData
\brief BString's storage for data
*/
/*!
\fn BString::BString()
\brief Creates an uninitialized BString.
*/
/*!
\fn BString::BString(const char* str)
\brief Creates a BString and initializes it to the given string.
\param str Pointer to a NULL terminated string.
*/
/*!
\fn BString::BString(const BString &string)
\brief Creates a BString and makes it a copy of the supplied one.
\param string the BString object to be copied.
*/
/*!
\fn BString::BString(const char *str, int32 maxLength)
\brief Creates a BString and initializes it to the given string.
\param str Pointer to a NULL terminated string.
\param maxLength The amount of characters you want to copy from the original
string.
*/
/*!
\fn BString::~BString()
\brief Frees all resources associated with the object.
Frees the memory allocated by the BString object.
*/
/*! @{
\name Access Methods
*/
/*!
\fn const char* BString::String() const
\brief Returns a pointer to the object string, NULL terminated.
Returns a pointer to the object string, guaranteed to be NULL
terminated. You can't modify or free the pointer. Once the BString
object is deleted, the pointer becomes invalid.
\return A pointer to the object string.
*/
/*!
\fn int32 BString::Length() const
\brief Returns the length of the string, measured in bytes.
\return The length of the string, measured in bytes.
*/
/*!
\fn int32 BString::CountChars() const
\brief Returns the length of the object measured in characters.
Counts the number of UTF8 characters contained in the string.
\return An integer which is the number of characters in the string.
*/
//! @}
/*! @{
\name Assignment Methods
*/
/*!
\fn BString& BString::operator=(const BString &string)
\brief Makes a copy of the given BString object.
\param string The string object to copy.
\return The function always returns \c *this .
*/
/*!
\fn BString& BString::operator=(const char *str)
\brief Re-initializes the object to the given string.
\param str Pointer to a string.
\return The function always returns \c *this .
*/
/*!
\fn BString& BString::operator=(char c)
\brief Re-initializes the object to the given character.
\param c The character which you want to initialize the string to.
\return The function always returns \c *this .
*/
/*!
\fn BString& BString::SetTo(const char *str, int32 maxLength)
\brief Re-initializes the object to the given string.
\param str Pointer to a string.
\param maxLength Amount of characters to copy from the original string.
\return The function always returns \c *this .
*/
/*!
\fn BString& BString::SetTo(const BString &from)
\brief Makes a copy of the given BString object.
\param from The string object to copy.
\return The function always returns \c *this .
*/
/*!
\fn BString& BString::Adopt(BString &from)
\brief Adopt's data of the given BString object, freeing the original object.
\param from The string object to adopt.
\return The function always returns \c *this .
*/
/*!
\fn BString& BString::SetTo(const BString &string, int32 length)
\brief Makes a copy of the given BString object.
\param string The string object to copy.
\param length Amount of characters to copy from the original BString.
\return The function always returns \c *this .
*/
/*!
\fn BString& BString::Adopt(BString &from, int32 length)
\brief Adopt's data of the given BString object, freeing the original object.
\param from The string object to adopt.
\param length Amount of characters to get from the original BString.
\return The function always returns \c *this .
*/
/*!
\fn BString& BString::SetTo(char c, int32 count)
\brief Initializes the object to a string composed by a character you specify.
\param c The character you want to initialize the BString.
\param count The number of characters you want the BString to be composed by.
\return The function always returns \c *this .
*/
//! @}
/*! @{
\name Substring Copying
*/
\*!
\fn BString &BString::CopyInto(BString &into, int32 fromOffset, int32 length) const
\brief Copy the BString data (or part of it) into another BString.
\param into The BString where to copy the object.
\param fromOffset The offset (zero based) where to begin the copy
\param length The amount of bytes to copy.
\return This function always returns *this .
*/
/*!
\fn void BString::CopyInto(char *into, int32 fromOffset, int32 length) const
\brief Copy the BString data (or part of it) into the supplied buffer.
\param into The buffer where to copy the object.
\param fromOffset The offset (zero based) where to begin the copy
\param length The amount of bytes to copy.
*/
//! @}

View File

@ -5,6 +5,35 @@
The Support Kit provides a handy set of functions and classes that you can
use in your applications.
This section is still under construction.
<ul>
<li>Threading utility classes:</li>
<ul>
<li>BLocker</li>
<li>BAutoLock</li>
<li>Thread Local Storage</li>
</ul>
<li>Archiving and IO:</li>
<ul>
<li>BArchivable</li>
<li>BFlattenable</li>
<li>BDataIO</li>
<ul>
<li>BPositionIO</li>
<ul>
<li>BMemoryIO</li>
<li>BMallocIO</li>
</ul>
</ul>
</ul>
<li>Container classes:</li>
<ul>
<li>BBlockCache</li>
<li>BList</li>
<li>BString</li>
</ul>
<li>BStopWatch</li>
<li>\ref TypeConstants.h "Common types and constants"</li>
<li>Error codes for all kits</li>
</ul>
*/

View File

@ -63,3 +63,166 @@ global session.
/*! \fn int setlogmask_thread(int priorityMask)
\brief sets the logging priority mask
*/
/*! @{
\name Options for openlog()
*/
/*! \def LOG_PID
\brief Log the process (thread/team) ID with each message
*/
/*! \def LOG_CONS
\brief Log to the system console on error
*/
/*! \def LOG_ODELAY
\brief Delay open until syslog() is called
*/
/*! \def LOG_NDELAY
\brief Connect to the syslog daemon immediately
*/
/*! \def LOG_SERIAL
\brief Dump to serial output as well.
\attention This is not yet implemented
*/
/*! \def LOG_PERROR
\brief Dump to stderr as well
*/
/*! \def LOG_NOWAIT
\brief Do not wait for child processes
*/
//! @}
/*! @{
\name Facilities for openlog()
*/
/*! \def LOG_KERN
\brief Reserved for messages generated by the kernel.
*/
/*! \def LOG_USER
\brief Reserved for messages generated by user processes.
*/
/*! \def LOG_MAIL
\brief Standard (?) POSIX facility for messages by the mailing daemon.
*/
/*! \def LOG_DAEMON
\brief Standard POSIX (?) facility for messages by daemons (and Haiku servers).
*/
/*! \def LOG_AUTH
\brief Standard POSIX facility(?) for messages by the authentication services.
*/
/*! \def LOG_SYSLOG
\brief Reserved for messages generated by the syslog daemon.
*/
/*! \def LOG_LPR
\brief Reserved for messages generated by the UNIX lpr printing tool.
*/
/*! \def LOG_NEWS
\brief Reserved for messages generated by something UNIXy that does something with NEWS.
*/
/*! \def LOG_UUCP
\brief Reserved for messages generated by UUCP
*/
/*! \def LOG_CRON
\brief Reserved for messages generated by the CRON daemon.
*/
/*! \def LOG_AUTHPRIV
\brief Reserved for private (?) messages that relate to authentication.
*/
/*! \def LOG_LOCAL0
\brief Use this for local use.
*/
/*! \def LOG_LOCAL1
\brief Use this for local use.
*/
/*! \def LOG_LOCAL2
\brief Use this for local use.
*/
/*! \def LOG_LOCAL3
\brief Use this for local use.
*/
/*! \def LOG_LOCAL4
\brief Use this for local use.
*/
/*! \def LOG_LOCAL5
\brief Use this for local use.
*/
/*! \def LOG_LOCAL6
\brief Use this for local use.
*/
/*! \def LOG_LOCAL7
\brief Use this for local use.
*/
//! @}
/*! @{
\name Priorities for syslog(), log_team() and log_thread()
*/
/*! \def LOG_EMERG
\brief A panic condition
*/
/*! \def LOG_PANIC
\brief An alias for LOG_EMERG
*/
/*! \def LOG_ALERT
\brief A condition to that should be corrected immediately
*/
/*! \def LOG_CRIT
\brief Critical conditions like hard drive errors
*/
/*! \def LOG_ERR
\brief Errors
*/
/*! \def LOG_WARNING
\brief Warnings
*/
/*! \def LOG_NOTICE
\brief Notices, instructions on how to use certain configuration options.
*/
/*! \def LOG_INFO
\brief Information, like versions and so.
*/
/*! \def LOG_DEBUG
\brief Debug information.
*/\
//! @}
/*! \def LOG_MASK
\brief Converts a priority definition for use in setlogmask()
*/

View File

@ -0,0 +1,129 @@
/*!
\file TypeConstants.h
\ingroup support
*/
/*!
\var B_ANY_TYPE
\brief General type when the exact contents is not yet known.
*/
/*!
\var B_BOOL_TYPE
\brief Boolean value
*/
/*!
\var B_CHAR_TYPE
\brief Represents the \c char type
*/
/*!
\var B_COLOR_8_BIT_TYPE
\brief Represents a one-byte colour
*/
/*!
\var B_DOUBLE_TYPE
\brief Represents the \c double type
*/
/*!
\var B_FLOAT_TYPE
\brief Represents the \c float type
*/
/*!
\var B_GRAYSCALE_8_BIT_TYPE
\brief Represents a byte-long grayscale value
*/
/*!
\var B_INT16_TYPE
\brief Represents a \c short type
*/
/*!
\var B_INT32_TYPE
\brief Represents a \c long type
*/
/*!
\var B_INT64_TYPE
\brief Represents a \c long \c long type
*/
/*!
\var B_INT8_TYPE
\brief Represents a \c char type used for integer storage
*/
// Todo: the rest of the types
/*! @{
\name System-wide MIME types for handling URLs
*/
/*!
\var B_URL_HTTP
\brief application/x-vnd.Be.URL.http
*/
/*!
\var B_URL_HTTPS
\brief application/x-vnd.Be.URL.https
*/
/*!
\var B_URL_FTP
\brief application/x-vnd.Be.URL.ftp
*/
/*!
\var B_URL_GOPHER
\brief application/x-vnd.Be.URL.gopher
*/
/*!
\var B_URL_MAILTO
\brief application/x-vnd.Be.URL.mailto
*/
/*!
\var B_URL_NEWS
\brief application/x-vnd.Be.URL.news
*/
/*!
\var B_URL_NNTP
\brief application/x-vnd.Be.URL.nntp
*/
/*!
\var B_URL_TELNET
\brief application/x-vnd.Be.URL.telnet
*/
/*!
\var B_URL_RLOGIN
\brief application/x-vnd.Be.URL.rlogin
*/
/*!
\var B_URL_TN3270
\brief application/x-vnd.Be.URL.tn3270
*/
/*!
\var B_URL_WAIS
\brief application/x-vnd.Be.URL.wais
*/
/*!
\var B_URL_FILE
\brief application/x-vnd.Be.URL.file
*/
//! @}