//
// Automatically generated by ipdlc.
// Edit at your own risk
//
#include "mozilla/PProcInfo.h"
#include "mozilla/PProcInfoParent.h"
#include "mozilla/PProcInfoChild.h"
#include "ipc/IPCMessageUtils.h"
#include "ipc/IPCMessageUtilsSpecializations.h"
#include "nsIFile.h"
#include "mozilla/ipc/Endpoint.h"
#include "mozilla/ipc/ProtocolMessageUtils.h"
#include "mozilla/ipc/ProtocolUtils.h"
#include "mozilla/ipc/ShmemMessageUtils.h"
#include "mozilla/ipc/TaintingIPCUtils.h"
namespace mozilla {
namespace PProcInfo {
nsresult
CreateEndpoints(
mozilla::ipc::EndpointProcInfo aParentDestInfo,
mozilla::ipc::EndpointProcInfo aChildDestInfo,
mozilla::ipc::Endpoint<::mozilla::PProcInfoParent>* aParent,
mozilla::ipc::Endpoint<::mozilla::PProcInfoChild>* aChild)
{
return mozilla::ipc::CreateEndpoints(
mozilla::ipc::PrivateIPDLInterface(),
aParentDestInfo, aChildDestInfo, aParent, aChild);
}
mozilla::UniquePtr<IPC::Message>
Msg_GetProcInfo(IPC::Message::routeid_t routingId)
{
return IPC::Message::IPDLMessage(routingId, Msg_GetProcInfo__ID, 0, IPC::Message::HeaderFlags(IPC::Message::NOT_NESTED, IPC::Message::NORMAL_PRIORITY, IPC::Message::COMPRESSION_NONE, IPC::Message::EAGER_SEND, IPC::Message::NOT_CONSTRUCTOR, IPC::Message::ASYNC, IPC::Message::NOT_REPLY));
}
mozilla::UniquePtr<IPC::Message>
Reply_GetProcInfo(IPC::Message::routeid_t routingId)
{
return IPC::Message::IPDLMessage(routingId, Reply_GetProcInfo__ID, 0, IPC::Message::HeaderFlags(IPC::Message::NOT_NESTED, IPC::Message::NORMAL_PRIORITY, IPC::Message::COMPRESSION_NONE, IPC::Message::EAGER_SEND, IPC::Message::NOT_CONSTRUCTOR, IPC::Message::ASYNC, IPC::Message::REPLY));
}
} // namespace PProcInfo
} // namespace mozilla
//-----------------------------------------------------------------------------
// Method definitions for the IPDL type |struct RemoteProcInfo|
//
namespace mozilla {
auto RemoteProcInfo::StaticAssertions() const -> void
{
static_assert(
(offsetof(RemoteProcInfo, cpuCycleCount_) - offsetof(RemoteProcInfo, memory_)) == 16,
"Bad assumptions about field layout!");
}
} // namespace mozilla
namespace IPC {
auto ParamTraits<::mozilla::RemoteProcInfo>::Write(
IPC::MessageWriter* aWriter,
const paramType& aVar) -> void
{
IPC::WriteParam(aWriter, (aVar).threads());
// Sentinel = 'threads'
(aWriter)->WriteSentinel(198116076);
(aWriter)->WriteBytes((&((aVar).memory())), 24);
// Sentinel = 'memory | cpuTime | cpuCycleCount'
(aWriter)->WriteSentinel(3340241962);
}
auto ParamTraits<::mozilla::RemoteProcInfo>::Read(IPC::MessageReader* aReader) -> IPC::ReadResult<paramType>
{
auto maybe___threads = IPC::ReadParam<nsTArray<::mozilla::ThreadInfo>>(aReader);
if (!maybe___threads) {
aReader->FatalError("Error deserializing 'threads' (ThreadInfo[]) member of 'RemoteProcInfo'");
return {};
}
auto& _threads = *maybe___threads;
// Sentinel = 'threads'
if ((!((aReader)->ReadSentinel(198116076)))) {
mozilla::ipc::SentinelReadError("Error deserializing 'threads' (ThreadInfo[]) member of 'RemoteProcInfo'");
return {};
}
IPC::ReadResult<paramType> result__{
std::in_place,
::uint64_t{0},
::uint64_t{0},
::uint64_t{0},
std::move(_threads)};
if ((!((aReader)->ReadBytesInto((&((result__)->memory())), 24)))) {
aReader->FatalError("Error bulk reading fields from uint64_t");
return {};
}
// Sentinel = 'memory | cpuTime | cpuCycleCount'
if ((!((aReader)->ReadSentinel(3340241962)))) {
mozilla::ipc::SentinelReadError("Error bulk reading fields from uint64_t");
return {};
}
return result__;
}
} // namespace IPC