F´ Flight Software - C/C++ Documentation  NASA-v2.0.1
A framework for building embedded system applications to NASA flight quality standards.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
IPCQueue.hpp
Go to the documentation of this file.
1 #ifndef _IPCQueue_hpp_
2 #define _IPCQueue_hpp_
3 
4 #include <Os/Queue.hpp>
5 
6 namespace Os {
7  class IPCQueue : public Os::Queue {
8  public:
9  IPCQueue();
10  ~IPCQueue();
11  QueueStatus create(const Fw::StringBase &name, NATIVE_INT_TYPE depth, NATIVE_INT_TYPE msgSize);
12 
13  // Base class has overloads - NOTE(mereweth) - this didn't work
14  //using Queue::send;
15  //using Queue::receive;
16 
17  // Send serialized buffers
18  QueueStatus send(const Fw::SerializeBufferBase &buffer, NATIVE_INT_TYPE priority, QueueBlocking block);
20 
21  // Send raw buffers
22  QueueStatus send(const U8* buffer, NATIVE_INT_TYPE size, NATIVE_INT_TYPE priority, QueueBlocking block);
23  QueueStatus receive(U8* buffer, NATIVE_INT_TYPE capacity, NATIVE_INT_TYPE &actualSize, NATIVE_INT_TYPE &priority, QueueBlocking block);
24 
25  NATIVE_INT_TYPE getNumMsgs(void) const;
26  NATIVE_INT_TYPE getMaxMsgs(void) const;
27  NATIVE_INT_TYPE getQueueSize(void) const;
28  NATIVE_INT_TYPE getMsgSize(void) const;
29  };
30 }
31 
32 #endif
Os
Definition: File.cpp:7
Os::IPCQueue::receive
QueueStatus receive(Fw::SerializeBufferBase &buffer, NATIVE_INT_TYPE &priority, QueueBlocking block)
receive a message
Definition: IPCQueueCommon.cpp:15
Os::IPCQueue::getNumMsgs
NATIVE_INT_TYPE getNumMsgs(void) const
get the number of messages in the queue
Definition: IPCQueueStub.cpp:342
Fw::SerializeBufferBase
Definition: Serializable.hpp:43
Os::IPCQueue::~IPCQueue
~IPCQueue()
Definition: IPCQueueStub.cpp:84
Fw::StringBase
Definition: StringType.hpp:23
U8
uint8_t U8
8-bit unsigned integer
Definition: BasicTypes.hpp:76
Os::Queue::QueueStatus
QueueStatus
Definition: Queue.hpp:27
Os::Queue::QueueBlocking
QueueBlocking
Definition: Queue.hpp:40
Os::IPCQueue::IPCQueue
IPCQueue()
Definition: IPCQueueStub.cpp:53
Os::IPCQueue::getQueueSize
NATIVE_INT_TYPE getQueueSize(void) const
get the queue depth (maximum number of messages queue can hold)
Definition: IPCQueueStub.cpp:360
Os::IPCQueue
Definition: IPCQueue.hpp:7
Os::IPCQueue::getMaxMsgs
NATIVE_INT_TYPE getMaxMsgs(void) const
get the maximum number of messages (high watermark)
Definition: IPCQueueStub.cpp:351
Os::IPCQueue::create
QueueStatus create(const Fw::StringBase &name, NATIVE_INT_TYPE depth, NATIVE_INT_TYPE msgSize)
create a message queue
Definition: IPCQueueStub.cpp:56
NATIVE_INT_TYPE
int NATIVE_INT_TYPE
native integer type declaration
Definition: BasicTypes.hpp:29
Os::Queue
Definition: Queue.hpp:24
Os::IPCQueue::send
QueueStatus send(const Fw::SerializeBufferBase &buffer, NATIVE_INT_TYPE priority, QueueBlocking block)
send a message
Definition: IPCQueueCommon.cpp:6
Os::IPCQueue::getMsgSize
NATIVE_INT_TYPE getMsgSize(void) const
get the message size (maximum message size queue can hold)
Definition: IPCQueueStub.cpp:369
Queue.hpp