20 #ifndef _PROCESS_IPC_H 21 #define _PROCESS_IPC_H 23 #include "pedigree/kernel/Log.h" 24 #include "pedigree/kernel/compiler.h" 25 #include "pedigree/kernel/process/Mutex.h" 26 #include "pedigree/kernel/process/Semaphore.h" 27 #include "pedigree/kernel/processor/types.h" 28 #include "pedigree/kernel/utilities/List.h" 29 #include "pedigree/kernel/utilities/String.h" 30 #include "pedigree/kernel/utilities/new" 54 IpcMessage(
size_t nBytes, uintptr_t regionHandle = 0);
74 FATAL(
"IpcMessage: copy constructor misused.");
99 : m_Name(name), m_Queue(), m_QueueSize(0), m_QueueLock(
false)
101 NOTICE(
"Creating endpoint with name " << name);
102 NOTICE(
"Endpoint is at " << reinterpret_cast<uintptr_t>(
this));
107 FATAL(
"IpcEndpoint " << m_Name <<
" is being destroyed.");
114 const String &getName()
const uintptr_t m_vAddr
Virtual address of a message when m_pMemRegion is invalid.
MemoryRegion * m_pMemRegion
IpcMessage(const IpcMessage &src)
Special memory entity in the kernel's virtual address space.
A queued message ready for retrieval.