root/trunk/raknet/rakglue/rakbitstreamglue.cpp

Revision 25, 2.5 kB (checked in by clayasaurus, 6 years ago)

raknet now works on windows, sources, minibugfix

Line 
1 #include "rakbitstream.h"
2
3 extern "C" {
4
5 // behind the scenes dataStream that does all the work for us
6 RakNet::BitStream *dataStream;
7
8 // start up bitstream with default params
9 void rakBitstream_start1()
10 {
11    dataStream = new RakNet::BitStream();
12 }
13
14 void rakBitstream_start2(int initialBytes)
15 {
16    dataStream = new RakNet::BitStream(initialBytes);
17 }
18
19 // start up bitstream with given data
20 void rakBitstream_start3(char *_data, unsigned lengthInBytes, bool _copyData)
21 { 
22    dataStream = new RakNet::BitStream(_data, lengthInBytes, _copyData);
23 }
24
25 // deallocate bitstream and set to null
26 void rakBitstream_end()
27 {
28    // if there is something to deallocate, do it
29    if (dataStream != NULL)
30    {
31       delete dataStream;
32       dataStream = NULL;
33    }
34 }
35
36 // write ////////////////////////////////////////////////////////////////
37 void  rakBitstream_Write1 (bool input)
38 {
39    dataStream->Write(input);
40 }
41
42 void  rakBitstream_Write2 (unsigned char input)
43 {
44    dataStream->Write(input);
45 }
46
47 void  rakBitstream_Write3 (char input)
48 {
49    dataStream->Write(input);
50 }
51
52 void  rakBitstream_Write4 (unsigned short input)
53 {
54    dataStream->Write(input);
55 }
56
57 void  rakBitstream_Write5 (short input)
58 {
59    dataStream->Write(input);
60 }
61
62 void  rakBitstream_Write6 (unsigned int input)
63 {
64    dataStream->Write(input);
65 }
66
67 void  rakBitstream_Write7 (int input)
68 {
69    dataStream->Write(input);
70 }
71
72 void  rakBitstream_Write8 (float input)
73 {
74    dataStream->Write(input);
75 }
76
77 void  rakBitstream_Write9 (double input)
78 {
79    dataStream->Write(input);
80 }
81
82 void  rakBitstream_Write10 (char *input, int numberOfBytes)
83 {
84    dataStream->Write(input, numberOfBytes);
85 }
86
87
88 // read ////////////////////////////////////////////////////////////
89 bool  rakBitstream_Read1 (bool &output)
90 {
91    return dataStream->Read(output);
92 }
93
94 bool  rakBitstream_Read2 (unsigned char &output)
95 {
96    return dataStream->Read(output);
97 }
98
99 bool  rakBitstream_Read3 (char &output)
100 {
101    return dataStream->Read(output);
102 }
103
104 bool  rakBitstream_Read4 (unsigned short &output)
105 {
106    return dataStream->Read(output);
107 }
108
109 bool  rakBitstream_Read5 (short &output)
110 {
111    return dataStream->Read(output);
112 }
113
114 bool  rakBitstream_Read6 (unsigned int &output)
115 {
116    return dataStream->Read(output);
117 }
118
119 bool  rakBitstream_Read7 (int &output)
120 {
121    return dataStream->Read(output);
122 }
123
124 bool  rakBitstream_Read8 (float &output)
125 {
126    return dataStream->Read(output);
127 }
128
129 bool  rakBitstream_Read9 (double &output)
130 {
131    return dataStream->Read(output);
132 }
133
134 bool  rakBitstream_Read10 (char *output, int numberOfBytes)
135 {
136    return dataStream->Read(output, numberOfBytes);
137 }
138
139 }
Note: See TracBrowser for help on using the browser.