* Copyright 2012 Haiku, Inc. All rights reserved.
* Distributed under the terms of the MIT License.
*
* Authors:
* Paweł Dziepak, pdziepak@quarnos.org
*/
#ifndef RPCCALLBACKREQUEST_H
#define RPCCALLBACKREQUEST_H
#include "RPCDefs.h"
#include "XDR.h"
namespace RPC {
class CallbackRequest {
public:
CallbackRequest(void* buffer, int size);
~CallbackRequest();
inline uint32 XID();
inline uint32 ID();
inline uint32 Procedure();
inline status_t Error();
inline AcceptStat RPCError();
inline XDR::ReadStream& Stream();
private:
uint32 fXID;
uint32 fID;
uint32 fProcedure;
status_t fError;
AcceptStat fRPCError;
XDR::ReadStream fStream;
void* fBuffer;
};
inline uint32
CallbackRequest::XID()
{
return fXID;
}
inline uint32
CallbackRequest::ID()
{
return fID;
}
inline uint32
CallbackRequest::Procedure()
{
return fProcedure;
}
inline status_t
CallbackRequest::Error()
{
return fError;
}
inline AcceptStat
CallbackRequest::RPCError()
{
return fRPCError;
}
inline XDR::ReadStream&
CallbackRequest::Stream()
{
return fStream;
}
}
#endif