Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/branches/network/src/lib/network/data_stream.h @ 5722

Last change on this file since 5722 was 5722, checked in by bknecht, 18 years ago

set BufferSize in DataStream, patched NetworkSocket for SDL

File size: 1.6 KB
Line 
1/*!
2 * @file data_stream.h
3  *  Main class for a data stream, used for our network stream
4  *  network stream will get data, and will send it with a network socket
5  *  to another network stream
6
7*/
8
9#ifndef _DATA_STREAM_H
10#define _DATA_STREAM_H
11
12#include "base_object.h"
13#include "netdefs.h"
14
15class Synchronizeable;
16class NetworkSocket;
17
18class DataStream : public BaseObject
19{
20      public:
21      DataStream();
22      DataStream(Synchronizeable& sync);
23      DataStream(DataStream& inStream, DataStream& outStream);
24      DataStream(Synchronizeable& sync, NetworkSocket& socket);
25      DataStream(DataStream& inStream, NetworkSocket& socket);
26      DataStream(Synchronizeable& sync, DataStream& outStream);
27     
28      ~DataStream();
29     
30     
31     
32     
33      void connectNetworkSocket(NetworkSocket& socket);
34     
35      void disconnectNetworkSocket();
36     
37      void connectSynchronizeable(Synchronizeable& sync);
38     
39      void disconnectSynchronizeable();
40
41      void connectUpStream(DataStream& upStream);
42
43      void disconnectUpStream();
44
45      void connectDownStream(DataStream& downStream);
46
47      void disconnectDownStream();
48
49      virtual void processData() = 0;
50
51      protected:
52      void passDown(byte* data, int length);
53
54      int passUp(byte* data);
55
56      byte* upBuffer [1024];
57      byte* downBuffer [1024];
58      unsigned int bufferSize;
59      DataStream* upStream;
60      DataStream* downStream;
61      NetworkSocket* networkSocket;
62      Synchronizeable* synchronizeable;
63
64};
65
66#endif /* _DATA_STREAM_ */
Note: See TracBrowser for help on using the repository browser.