Developer World
Spresense SDK Library v3.2.0-ebc0364

Message Queue Class. More...

#include <MsgQueBlock.h>

Inheritance diagram for MsgQueBlock:
Collaboration diagram for MsgQueBlock:

Classes

struct  Tally
 

Public Types

typedef uint16_t SpinLockId
 

Public Member Functions

err_t recv (uint32_t ms, FAR MsgPacket **packet)
 
err_t pop ()
 
MsgCpuId getOwner () const
 
bool isShare () const
 
uint16_t getNumMsg (MsgPri pri) const
 
uint16_t getRest (MsgPri pri) const
 
void reset ()
 
void dump () const
 
void dumpQue (MsgPri pri) const
 

Protected Member Functions

 MsgQueBlock (MsgQueId id, MsgCpuId owner, SpinLockId spinlock)
 
err_t setup (drm_t n_drm, uint16_t n_size, uint16_t n_num, drm_t h_drm, uint16_t h_size, uint16_t h_num)
 
uint16_t getElemSize (MsgPri pri) const
 
bool isOwn () const
 
template<typename T >
err_t send (MsgPri pri, MsgType type, MsgQueId reply, MsgFlags flags, const T &param)
 
template<typename T >
err_t sendIsr (MsgPri pri, MsgType type, MsgQueId reply, const T &param)
 
void notifySend (MsgCpuId cpu, MsgQueId dest)
 
void notifyRecv ()
 
MsgPacketpushHeader (MsgPri pri, const MsgPacketHeader &header)
 
void lock ()
 
void unlock ()
 

Static Protected Member Functions

template<typename T >
static size_t getSendSize (const T &param, bool type_check)
 
template<>
size_t getSendSize (const MsgNullParam &, bool)
 
template<>
size_t getSendSize (const MsgRangedParam &param, bool)
 

Friends

class MsgLib
 

Detailed Description

Message Queue Class.


The documentation for this class was generated from the following files: