Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

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

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

added empty constuktor for datastream

File size: 1.5 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(DataStream& inStream, DataStream& outStream);
23      DataStream(Synchronizeable& sync, NetworkSocket& socket);
24      DataStream(DataStream& inStream, NetworkSocket& socket);
25      DataStream(Synchronizeable& sync, DataStream& outStream);
26     
27      ~DataStream();
28     
29     
30     
31     
32      void connectNetworkSocket(NetworkSocket& socket);
33     
34      void disconnectNetworkSocket();
35     
36      void connectSynchronizeable(Synchronizeable& sync);
37     
38      void disconnectSynchronizeable();
39
40      void connectUpStream(DataStream& upStream);
41
42      void disconnectUpStream();
43
44      void connectDownStream(DataStream& downStream);
45
46      void disconnectDownStream();
47
48      virtual void processData() = 0;
49
50      protected:
51      void writeBytes(byte& data);
52
53      byte& readBytes();
54     
55      byte inBuffer [];
56      byte outBuffer [];
57      unsigned int bufferSize;
58      DataStream* upStream;
59      DataStream* downStream;
60      NetworkSocket* networkSocket;
61
62};
63
64#endif /* _DATA_STREAM_ */
Note: See TracBrowser for help on using the repository browser.