Merge pull request #5372 from SenRamakri/sen_PlatformDoxygenUpdates

Doxygen comments fixes
pull/5471/head
Martin Kojtal 2017-11-09 16:38:45 +00:00 committed by GitHub
commit fbd9e7eaf2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
49 changed files with 405 additions and 81 deletions

View File

@ -32,7 +32,7 @@ DOXYFILE_ENCODING = UTF-8
# title of most generated pages and in a few other places.
# The default value is: My Project.
PROJECT_NAME = "My Project"
PROJECT_NAME = "Mbed OS Reference"
# The PROJECT_NUMBER tag can be used to enter a project or revision number. This
# could be handy for archiving the generated documentation or if some version

View File

@ -1,4 +1,5 @@
{
"PROJECT_NAME": "Mbed OS Reference",
"ENABLE_PREPROCESSING": "YES",
"MACRO_EXPANSION": "YES",
"EXPAND_ONLY_PREDEF": "NO",

View File

@ -39,6 +39,13 @@
namespace mbed {
/** \addtogroup drivers */
/** Class providing buffered UART communication functionality using separate circular buffer for send and receive channels
*
* @ingroup drivers
*/
class UARTSerial : private SerialBase, public FileHandle, private NonCopyable<UARTSerial> {
public:

View File

@ -24,6 +24,15 @@
#include <cstdarg>
#include "Callback.h"
namespace mbed {
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_ATCmdParser ATCmdParser class
* @{
*/
/**
* Parser class for parsing AT commands
*
@ -43,8 +52,6 @@
* @endcode
*/
namespace mbed {
class ATCmdParser : private NonCopyable<ATCmdParser>
{
private:
@ -299,6 +306,11 @@ public:
*/
bool process_oob(void);
};
/**@}*/
/**@}*/
} //namespace mbed
#endif //MBED_ATCMDPARSER_H

View File

@ -1,6 +1,10 @@
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_CThunk CThunk class
* @{
*/
/* General C++ Object Thunking class
*
* - allows direct callbacks to non-static C++ class functions
@ -73,13 +77,11 @@
/* IRQ/Exception compatible thunk entry function */
typedef void (*CThunkEntry)(void);
/** @}*/
/**
* Class for created a pointer with data bound to it
*
* @note Synchronization level: Not protected
* @ingroup platform
*/
template<class T>
class CThunk
@ -243,5 +245,9 @@ class CThunk
}
};
/**@}*/
/**@}*/
#endif/*__CTHUNK_H__*/

View File

@ -22,7 +22,17 @@
#include <string.h>
namespace mbed {
typedef Callback<void()> *pFunctionPointer_t;
class CallChainLink;
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_CallChain CallChain class
* @{
*/
/** Group one or more functions in an instance of a CallChain, then call them in
* sequence using CallChain::call(). Used mostly by the interrupt chaining code,
@ -60,12 +70,7 @@ namespace mbed {
* chain.call();
* }
* @endcode
* @ingroup platform
*/
typedef Callback<void()> *pFunctionPointer_t;
class CallChainLink;
class CallChain : private NonCopyable<CallChain> {
public:
/** Create an empty chain
@ -209,6 +214,10 @@ private:
CallChainLink *_chain;
};
/**@}*/
/**@}*/
} // namespace mbed
#endif

View File

@ -24,12 +24,15 @@
namespace mbed {
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_Callback Callback class
* @{
*/
/** Callback class based on template specialization
*
* @note Synchronization level: Not protected
* @ingroup platform
*/
template <typename F>
class Callback;
@ -67,7 +70,6 @@ namespace detail {
/** Callback class based on template specialization
*
* @note Synchronization level: Not protected
* @ingroup platform
*/
template <typename R>
class Callback<R()> {
@ -642,7 +644,6 @@ private:
/** Callback class based on template specialization
*
* @note Synchronization level: Not protected
* @ingroup platform
*/
template <typename R, typename A0>
class Callback<R(A0)> {
@ -1218,7 +1219,6 @@ private:
/** Callback class based on template specialization
*
* @note Synchronization level: Not protected
* @ingroup platform
*/
template <typename R, typename A0, typename A1>
class Callback<R(A0, A1)> {
@ -1795,7 +1795,6 @@ private:
/** Callback class based on template specialization
*
* @note Synchronization level: Not protected
* @ingroup platform
*/
template <typename R, typename A0, typename A1, typename A2>
class Callback<R(A0, A1, A2)> {
@ -2373,7 +2372,6 @@ private:
/** Callback class based on template specialization
*
* @note Synchronization level: Not protected
* @ingroup platform
*/
template <typename R, typename A0, typename A1, typename A2, typename A3>
class Callback<R(A0, A1, A2, A3)> {
@ -2952,7 +2950,6 @@ private:
/** Callback class based on template specialization
*
* @note Synchronization level: Not protected
* @ingroup platform
*/
template <typename R, typename A0, typename A1, typename A2, typename A3, typename A4>
class Callback<R(A0, A1, A2, A3, A4)> {
@ -4546,6 +4543,9 @@ Callback<R(A0, A1, A2, A3, A4)> callback(const volatile U *obj, R (*func)(const
return Callback<R(A0, A1, A2, A3, A4)>(func, obj);
}
/**@}*/
/**@}*/
} // namespace mbed

View File

@ -20,11 +20,15 @@
namespace mbed {
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_CircularBuffer CircularBuffer functions
* @{
*/
/** Templated Circular buffer class
*
* @note Synchronization level: Interrupt safe
* @ingroup platform
*/
template<typename T, uint32_t BufferSize, typename CounterType = uint32_t>
class CircularBuffer {
@ -112,6 +116,10 @@ private:
volatile bool _full;
};
/**@}*/
/**@}*/
}
#endif

View File

@ -22,6 +22,13 @@
namespace mbed {
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_CriticalSectionLock CriticalSectionLock functions
* @{
*/
/** RAII object for disabling, then restoring, interrupt state
* Usage:
* @code
@ -65,6 +72,9 @@ public:
}
};
/**@}*/
/**@}*/
} // namespace mbed

View File

@ -22,6 +22,12 @@
namespace mbed {
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_DeepSleepLock DeepSleepLock functions
* @{
*/
/** RAII object for disabling, then restoring the deep sleep mode
* Usage:
@ -82,6 +88,11 @@ public:
}
};
/**@}*/
/**@}*/
}
#endif

View File

@ -23,6 +23,11 @@
namespace mbed {
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_DirHandle DirHandle functions
* @{
*/
/** Represents a directory stream. Objects of this type are returned
@ -40,7 +45,6 @@ namespace mbed {
*
* @note to create a directory, @see Dir
* @note Synchronization level: Set by subclass
* @ingroup platform
*/
class DirHandle : private NonCopyable<DirHandle> {
public:
@ -142,7 +146,9 @@ public:
virtual void seekdir(off_t location) { seek(location); }
};
/**@}*/
/**@}*/
} // namespace mbed
#endif /* MBED_DIRHANDLE_H */

View File

@ -27,19 +27,22 @@ typedef int FILEHANDLE;
#include "platform/NonCopyable.h"
namespace mbed {
/** \addtogroup platform */
/** @{*/
typedef enum {
FilePathType,
FileSystemPathType
} PathType;
/** @}*/
/** \addtogroup platform */
/** @{*/
/**
* @class FileBase
* @ingroup platform
* \defgroup platform_FileBase FileBase class
* @{
*/
/** Class FileBase
*
*/
class FileBase : private NonCopyable<FileBase> {
public:
FileBase(const char *name, PathType t);
@ -62,6 +65,10 @@ private:
const PathType _path_type;
};
/**@}*/
/**@}*/
} // namespace mbed
#endif

View File

@ -26,6 +26,11 @@ typedef int FILEHANDLE;
namespace mbed {
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_FileHandle FileHandle functions
* @{
*/
/** Class FileHandle
@ -36,7 +41,6 @@ namespace mbed {
*
* @note to create a file, @see File
* @note Synchronization level: Set by subclass
* @ingroup platform
*/
class FileHandle : private NonCopyable<FileHandle> {
public:
@ -254,6 +258,11 @@ public:
std::FILE *fdopen(FileHandle *fh, const char *mode);
/**@}*/
/**@}*/
} // namespace mbed
#endif

View File

@ -23,14 +23,17 @@
namespace mbed {
/** \addtogroup platform */
/* Class FileLike
/** @{*/
/**
* \defgroup platform_FileLike FileLike class
* @{
*/
/** Class FileLike
*
* A file-like object is one that can be opened with fopen by
* fopen("/name", mode).
*
* @note Synchronization level: Set by subclass
* @ingroup platform
*/
class FileLike : public FileHandle, public FileBase, private NonCopyable<FileLike> {
public:
@ -42,6 +45,9 @@ public:
virtual ~FileLike() {}
};
/**@}*/
/**@}*/
} // namespace mbed

View File

@ -23,15 +23,23 @@
namespace mbed {
/** \addtogroup platform */
/** @{*/
/**
* @class FileSystem
* @ingroup platform
* \defgroup platform_FilePath FilePath class
* @{
*/
class FileSystem;
class FileSystem;
/** Class FilePath
*
*/
class FilePath {
public:
/** Constructor FilePath
*
* @param file_path The path of file.
*/
FilePath(const char* file_path);
const char* fileName(void);
@ -48,6 +56,10 @@ private:
FileBase* fb;
};
/**@}*/
/**@}*/
} // namespace mbed
#endif

View File

@ -26,6 +26,10 @@
namespace mbed {
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_FileSystemHandle FileSystemHandle functions
* @{
*/
/** A filesystem-like object is one that can be used to open file-like
@ -91,7 +95,9 @@ public:
*/
virtual int mkdir(const char *path, mode_t mode);
};
/**@}*/
/**@}*/
} // namespace mbed

View File

@ -25,6 +25,11 @@
namespace mbed {
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_FileSystemLike FileSystemLike functions
* @{
*/
/** A filesystem-like object is one that can be used to open file-like
@ -34,7 +39,6 @@ namespace mbed {
* of the rest of the functions just return error values).
*
* @note Synchronization level: Set by subclass
* @ingroup platform
*/
class FileSystemLike : public FileSystemHandle, public FileBase, private NonCopyable<FileSystemLike> {
public:
@ -79,6 +83,9 @@ public:
}
};
/**@}*/
/**@}*/
} // namespace mbed

View File

@ -23,13 +23,14 @@
namespace mbed {
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_FunctionPointer FunctionPointer class
* @{
*/
// Declarations for backwards compatibility
// To be foward compatible, code should adopt the Callback class
/**
* @ingroup platform
*/
template <typename R, typename A1>
class FunctionPointerArg1 : public Callback<R(A1)> {
public:
@ -61,9 +62,6 @@ public:
}
};
/**
* @ingroup platform
*/
template <typename R>
class FunctionPointerArg1<R, void> : public Callback<R()> {
public:
@ -97,6 +95,10 @@ public:
typedef FunctionPointerArg1<void, void> FunctionPointer;
/**@}*/
/**@}*/
} // namespace mbed

View File

@ -27,9 +27,12 @@
namespace mbed {
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_LocalFileSystem LocalFileSystem functions
* @{
*/
FILEHANDLE local_file_open(const char* name, int flags);
/** @}*/
/**
* @class LocalFileHandle
@ -112,6 +115,10 @@ public:
virtual int remove(const char *filename);
};
/**@}*/
/**@}*/
} // namespace mbed
#endif

View File

@ -1,5 +1,10 @@
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_PlatformMutex PlatformMutex class
* @{
*/
/* mbed Microcontroller Library
* Copyright (c) 2006-2013 ARM Limited
*
@ -25,7 +30,6 @@
typedef rtos::Mutex PlatformMutex;
#else
/** A stub mutex for when an RTOS is not present
* @ingroup platform
*/
class PlatformMutex : private mbed::NonCopyable<PlatformMutex> {
public:
@ -50,3 +54,6 @@ public:
#endif
/**@}*/
/**@}*/

View File

@ -1,6 +1,10 @@
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_SingletonPtr SingletonPtr class
* @{
*/
/* mbed Microcontroller Library
* Copyright (c) 2006-2013 ARM Limited
*
@ -55,7 +59,6 @@ inline static void singleton_unlock(void)
osMutexRelease (singleton_mutex_id);
#endif
}
/** @}*/
/** Utility class for creating an using a singleton
*
@ -68,7 +71,6 @@ inline static void singleton_unlock(void)
* @note: This class is lazily initialized on first use.
* This class is a POD type so if it is not used it will
* be garbage collected.
* @ingroup platform
*/
template <class T>
struct SingletonPtr {
@ -108,4 +110,6 @@ struct SingletonPtr {
};
#endif
/**@}*/
/**@}*/

View File

@ -26,16 +26,18 @@
namespace mbed {
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_Stream Stream class
* @{
*/
extern void mbed_set_unbuffered_stream(std::FILE *_file);
extern int mbed_getc(std::FILE *_file);
extern char* mbed_gets(char *s, int size, std::FILE *_file);
/** @}*/
/** File stream
*
* @note Synchronization level: Set by subclass
* @ingroup platform
*/
class Stream : public FileLike, private NonCopyable<Stream> {
@ -82,7 +84,9 @@ protected:
// Stub
}
};
/**@}*/
/**@}*/
} // namespace mbed
#endif

View File

@ -21,9 +21,13 @@
namespace mbed {
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_Transaction Transaction class
* @{
*/
/** Transaction structure
* @ingroup platform
*/
typedef struct {
void *tx_buffer; /**< Tx buffer */
@ -38,7 +42,6 @@ typedef struct {
/** Transaction class defines a transaction.
*
* @note Synchronization level: Not protected
* @ingroup platform
*/
template<typename Class>
class Transaction {
@ -72,7 +75,9 @@ private:
Class* _obj;
transaction_t _data;
};
/**@}*/
/**@}*/
}
#endif

View File

@ -1,6 +1,3 @@
/** \addtogroup platform */
/** @{*/
/* mbed Microcontroller Library
* Copyright (c) 2017-2017 ARM Limited
*
@ -16,6 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef MBED_APPLICATION_H
#define MBED_APPLICATION_H
@ -52,4 +50,3 @@ void mbed_start_application(uintptr_t address);
#endif
/** @}*/

View File

@ -1,6 +1,10 @@
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_Assert Assert macros
* @{
*/
/* mbed Microcontroller Library
* Copyright (c) 2006-2013 ARM Limited
*
@ -39,6 +43,19 @@ void mbed_assert_internal(const char *expr, const char *file, int line);
}
#endif
/** MBED_ASSERT
* Declare runtime assertions: results in runtime error if condition is false
*
* @note
* Use of MBED_ASSERT is limited to Debug and Develop builds.
*
* @code
*
* int Configure(serial_t *obj) {
* MBED_ASSERT(obj);
* }
* @endcode
*/
#ifdef NDEBUG
#define MBED_ASSERT(expr) ((void)0)
@ -110,4 +127,7 @@ do { \
#endif
/** @}*/
/**@}*/
/**@}*/

View File

@ -1,6 +1,4 @@
/** \addtogroup platform */
/** @{*/
/*
* Copyright (c) 2015-2016, ARM Limited, All Rights Reserved
* SPDX-License-Identifier: Apache-2.0
@ -29,6 +27,12 @@
extern "C" {
#endif
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_critical critical section function
* @{
*/
/** Determine the current interrupts enabled state
*
@ -363,8 +367,11 @@ void *core_util_atomic_decr_ptr(void **valuePtr, ptrdiff_t delta);
#ifdef __cplusplus
} // extern "C"
#endif
/**@}*/
/**@}*/
#endif // __MBED_UTIL_CRITICAL_H__
/** @}*/

View File

@ -1,6 +1,11 @@
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_debug Debug functions
* @{
*/
/* mbed Microcontroller Library
* Copyright (c) 2006-2013 ARM Limited
*
@ -68,4 +73,7 @@ static inline void debug_if(int condition, const char *format, ...) {
#endif
/** @}*/
/**@}*/
/**@}*/

View File

@ -1,6 +1,10 @@
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_error Error functions
* @{
*/
/* mbed Microcontroller Library
* Copyright (c) 2006-2013 ARM Limited
*
@ -75,3 +79,4 @@ void error(const char* format, ...);
#endif
/** @}*/
/** @}*/

View File

@ -1,6 +1,11 @@
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_interface Network interface and other utility functions
* @{
*/
/* mbed Microcontroller Library
* Copyright (c) 2006-2013 ARM Limited
*
@ -42,6 +47,11 @@ extern "C" {
#if DEVICE_SEMIHOST
/**
* \defgroup platform_interface interface functions
* @{
*/
/** Functions to control the mbed interface
*
* mbed Microcontrollers have a built-in interface to provide functionality such as
@ -137,6 +147,7 @@ void mbed_error_printf(const char* format, ...);
*
*/
void mbed_error_vfprintf(const char * format, va_list arg);
/** @}*/
#ifdef __cplusplus
}

View File

@ -1,6 +1,7 @@
/** \addtogroup platform */
/** @{*/
/* mbed Microcontroller Library
* Copyright (c) 2006-2016 ARM Limited
*
@ -35,6 +36,11 @@ enum {
MBED_MEM_TRACE_FREE
};
/**
* \defgroup platform_mem_trace mem_trace functions
* @{
*/
/* Prefix for the output of the default tracer */
#define MBED_MEM_DEFAULT_TRACER_PREFIX "#"
@ -133,6 +139,8 @@ void mbed_mem_trace_free(void *ptr, void *caller);
*/
void mbed_mem_trace_default_callback(uint8_t op, void *res, void *caller, ...);
/** @}*/
#ifdef __cplusplus
}
#endif

View File

@ -28,6 +28,11 @@
extern "C" {
#endif
/**
* \defgroup platform_mktime mktime functions
* @{
*/
/** Compute if a year is a leap year or not.
*
* @param year The year to test it shall be in the range [70:138]. Year 0 is
@ -89,6 +94,8 @@ time_t _rtc_mktime(const struct tm* calendar_time);
*/
bool _rtc_localtime(time_t timestamp, struct tm* calendar_time);
/** @}*/
#ifdef __cplusplus
}
#endif

View File

@ -27,7 +27,11 @@ namespace mbed {
class FileHandle;
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_poll poll functions
* @{
*/
struct pollfh {
FileHandle *fh;
@ -47,6 +51,10 @@ struct pollfh {
*/
int poll(pollfh fhs[], unsigned nfhs, int timeout);
/**@}*/
/**@}*/
} // namespace mbed
#endif //MBED_POLL_H

View File

@ -1,5 +1,10 @@
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_preprocessor preprocessor macros
* @{
*/
/* mbed Microcontroller Library
* Copyright (c) 2006-2013 ARM Limited
*
@ -51,3 +56,4 @@
#endif
/** @}*/
/** @}*/

View File

@ -58,13 +58,21 @@ typedef unsigned int gid_t; ///< Group ID
#endif
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_retarget Retarget functions
* @{
*/
/* DIR declarations must also be here */
#if __cplusplus
namespace mbed {
class FileHandle;
class DirHandle;
std::FILE *mbed_fdopen(FileHandle *fh, const char *mode);
}
typedef mbed::DirHandle DIR;
#else
@ -438,4 +446,8 @@ enum {
DT_SOCK, ///< This is a UNIX domain socket.
};
/**@}*/
/**@}*/
#endif /* RETARGET_H */

View File

@ -1,6 +1,10 @@
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_rtc_time rtc_time functions
* @{
*/
/* mbed Microcontroller Library
* Copyright (c) 2006-2013 ARM Limited
*
@ -90,3 +94,4 @@ void attach_rtc(time_t (*read_rtc)(void), void (*write_rtc)(time_t), void (*init
#endif
/** @}*/
/** @}*/

View File

@ -1,6 +1,4 @@
/** \addtogroup platform */
/** @{*/
/* mbed Microcontroller Library
* Copyright (c) 2006-2013 ARM Limited
*
@ -95,4 +93,4 @@ int semihost_disabledebug(void);
#endif
/** @}*/

View File

@ -1,6 +1,11 @@
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_sleep Sleep functions
* @{
*/
/* mbed Microcontroller Library
* Copyright (c) 2006-2017 ARM Limited
*
@ -169,3 +174,4 @@ __INLINE static void deepsleep(void)
#endif
/** @}*/
/** @}*/

View File

@ -1,6 +1,10 @@
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_stats stats functions
* @{
*/
/* mbed Microcontroller Library
* Copyright (c) 2016-2016 ARM Limited
*
@ -25,6 +29,9 @@
extern "C" {
#endif
/**
* struct mbed_stats_heap_t definition
*/
typedef struct {
uint32_t current_size; /**< Bytes allocated currently. */
uint32_t max_size; /**< Max bytes allocated at a given time. */
@ -41,6 +48,9 @@ typedef struct {
*/
void mbed_stats_heap_get(mbed_stats_heap_t *stats);
/**
* struct mbed_stats_stack_t definition
*/
typedef struct {
uint32_t thread_id; /**< Identifier for thread that owns the stack or 0 if multiple threads. */
uint32_t max_size; /**< Maximum number of bytes used on the stack. */
@ -73,3 +83,5 @@ size_t mbed_stats_stack_get_each(mbed_stats_stack_t *stats, size_t count);
#endif
/** @}*/
/** @}*/

View File

@ -1,6 +1,11 @@
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_toolchain Toolchain functions
* @{
*/
/* mbed Microcontroller Library
* Copyright (c) 2006-2013 ARM Limited
*
@ -382,3 +387,4 @@ typedef int FILEHANDLE;
#endif
/** @}*/
/** @}*/

View File

@ -1,6 +1,11 @@
/** \addtogroup platform */
/** @{*/
/**
* \defgroup platform_wait_api wait_api functions
* @{
*/
/* mbed Microcontroller Library
* Copyright (c) 2006-2013 ARM Limited
*
@ -70,3 +75,4 @@ void wait_us(int us);
#endif
/** @}*/
/** @}*/

View File

@ -32,7 +32,11 @@
namespace rtos {
/** \addtogroup rtos */
/** @{*/
/**
* \defgroup rtos_EventFlags EventFlags class
* @{
*/
/** The EventFlags class is used to signal or wait for an arbitrary event or events.
@note
EventFlags support 31 flags so the MSB flag is ignored, it is used to return an error code (@a osFlagsError)
@ -93,7 +97,9 @@ private:
mbed_rtos_storage_event_flags_t _obj_mem;
};
/** @}*/
/** @}*/
}
#endif
/** @}*/

View File

@ -38,7 +38,11 @@ using namespace rtos;
namespace rtos {
/** \addtogroup rtos */
/** @{*/
/**
* \defgroup rtos_Mail Mail class
* @{
*/
/** The Mail class allow to control, send, receive, or wait for mail.
A mail is a memory block that is send to a thread or interrupt service routine.
@tparam T data type of a single message element.
@ -119,9 +123,12 @@ private:
MemoryPool<T, queue_sz> _pool;
};
/** @}*/
/** @}*/
}
#endif
/** @}*/

View File

@ -33,7 +33,11 @@
namespace rtos {
/** \addtogroup rtos */
/** @{*/
/**
* \defgroup rtos_MemoryPool MemoryPool class
* @{
*/
/** Define and manage fixed-size memory pools of objects of a given type.
@tparam T data type of a single object (element).
@tparam queue_sz maximum number of objects (elements) in the memory pool.
@ -99,8 +103,10 @@ private:
char _pool_mem[((sizeof(T) + 3) & ~3) * pool_sz];
mbed_rtos_storage_mem_pool_t _obj_mem;
};
/** @}*/
/** @}*/
}
#endif
/** @}*/

View File

@ -32,7 +32,11 @@
namespace rtos {
/** \addtogroup rtos */
/** @{*/
/**
* \defgroup rtos_Mutex Mutex class
* @{
*/
/** The Mutex class is used to synchronize the execution of threads.
This is for example used to protect access to a shared resource.
@ -91,8 +95,9 @@ private:
mbed_rtos_storage_mutex_t _obj_mem;
uint32_t _count;
};
/** @}*/
/** @}*/
}
#endif
/** @}*/

View File

@ -34,7 +34,11 @@
namespace rtos {
/** \addtogroup rtos */
/** @{*/
/**
* \defgroup rtos_EventFlags EventFlags class
* @{
*/
/** The Queue class allow to control, send, receive, or wait for messages.
A message can be a integer or pointer value to a certain type T that is send
to a thread or interrupt service routine.
@ -134,8 +138,9 @@ private:
char _queue_mem[queue_sz * (sizeof(T*) + sizeof(mbed_rtos_storage_message_t))];
mbed_rtos_storage_msg_queue_t _obj_mem;
};
/** @}*/
/** @}*/
}
#endif
/** @}*/

View File

@ -33,7 +33,11 @@
namespace rtos {
/** \addtogroup rtos */
/** @{*/
/**
* \defgroup rtos_RtosTimer RtosTimer class
* @{
*/
/** The RtosTimer class allow creating and and controlling of timer functions in the system.
A timer function is called when a time period expires whereby both on-shot and
periodic timers are possible. A timer can be started, restarted, or stopped.
@ -160,9 +164,11 @@ private:
mbed_rtos_storage_timer_t _obj_mem;
mbed::Callback<void()> _function;
};
/** @}*/
/** @}*/
}
#endif
/** @}*/

View File

@ -31,6 +31,10 @@
namespace rtos {
/** \addtogroup rtos */
/** @{*/
/**
* \defgroup rtos_Semaphore Semaphore class
* @{
*/
/** The Semaphore class is used to manage and protect access to a set of shared resources.
*
@ -73,8 +77,9 @@ private:
osSemaphoreId_t _id;
mbed_rtos_storage_semaphore_t _obj_mem;
};
/** @}*/
/** @}*/
}
#endif
/** @}*/

View File

@ -35,6 +35,10 @@
namespace rtos {
/** \addtogroup rtos */
/** @{*/
/**
* \defgroup rtos_Thread Thread class
* @{
*/
/** The Thread class allow defining, creating, and controlling thread functions in the system.
*
@ -370,8 +374,9 @@ private:
mbed_rtos_storage_thread_t _obj_mem;
bool _finished;
};
/** @}*/
/** @}*/
}
#endif
/** @}*/

View File

@ -31,7 +31,17 @@
extern "C" {
#endif
/**
* \defgroup rtos_Idle Idle hook function
* @{
*/
/**
@note
Sets the hook function called by idle task
@param fptr Hook function pointer.
*/
void rtos_attach_idle_hook(void (*fptr)(void));
/** @}*/
#ifdef __cplusplus
}
@ -40,3 +50,4 @@ void rtos_attach_idle_hook(void (*fptr)(void));
#endif
/** @}*/