//
// Automatically generated by ipdlc.
// Edit at your own risk
//

#ifndef PWebBrowserPersistSerialize_h
#define PWebBrowserPersistSerialize_h

#include "mozilla/Attributes.h"
#include "IPCMessageStart.h"
#include "ipc/IPCMessageUtils.h"
#include "mozilla/RefPtr.h"
#include "nsStringGlue.h"
#include "nsTArray.h"
#include "mozilla/ipc/ProtocolUtils.h"
#include "nsTHashtable.h"
#include "mozilla/OperatorNewExtensions.h"

namespace mozilla {
class PWebBrowserPersistSerializeParent;
} // namespace mozilla
namespace mozilla {
class PWebBrowserPersistSerializeChild;
} // namespace mozilla

//-----------------------------------------------------------------------------
// Code common to PWebBrowserPersistSerializeChild and PWebBrowserPersistSerializeParent
//
namespace mozilla {
namespace PWebBrowserPersistSerialize {

nsresult
CreateEndpoints(
        base::ProcessId aParentDestPid,
        base::ProcessId aChildDestPid,
        mozilla::ipc::Endpoint<mozilla::PWebBrowserPersistSerializeParent>* aParent,
        mozilla::ipc::Endpoint<mozilla::PWebBrowserPersistSerializeChild>* aChild);

enum State {
    __Dead,
    __Null,
    __Error,
    __Dying,
    __Start = __Null
};

enum MessageType {
    PWebBrowserPersistSerializeStart = PWebBrowserPersistSerializeMsgStart << 16,
    Msg_WriteData__ID,
    Msg___delete____ID,
    Reply___delete____ID,
    PWebBrowserPersistSerializeEnd
};

bool
Transition(
        mozilla::ipc::Trigger trigger,
        State* next);

IPC::Message*
Msg_WriteData(int32_t routingId);

IPC::Message*
Msg___delete__(int32_t routingId);
IPC::Message*
Reply___delete__(int32_t routingId);



} // namespace PWebBrowserPersistSerialize
} // namespace mozilla

#endif // ifndef PWebBrowserPersistSerialize_h
