1// RequestChannel.h
2
3#ifndef NET_FS_REQUEST_CHANNEL_H
4#define NET_FS_REQUEST_CHANNEL_H
5
6#include <SupportDefs.h>
7
8class Channel;
9class Request;
10
11class RequestChannel {
12public:
13								RequestChannel(Channel* channel);
14								~RequestChannel();
15
16			status_t			SendRequest(Request* request);
17			status_t			ReceiveRequest(Request** request);
18
19private:
20			status_t			_GetRequestSize(Request* request, int32* size);
21
22private:
23			class ChannelWriter;
24			class MemoryReader;
25			struct RequestHeader;
26
27			Channel*			fChannel;
28			void*				fBuffer;
29			int32				fBufferSize;
30};
31
32#endif	// NET_FS_REQUEST_CHANNEL_H
33