@@ -51,129 +51,129 @@ namespace fusion {
51
51
52
52
53
53
CircularBuffer::CircularBuffer (size_t capacity) :
54
- m_capacity (capacity),
55
- m_buffer (new char [capacity + 1 ]),
56
- m_readOffset (0 ),
57
- m_writeOffset (0 )
54
+ m_capacity (capacity),
55
+ m_buffer (new char [capacity + 1 ]),
56
+ m_readOffset (0 ),
57
+ m_writeOffset (0 )
58
58
{
59
59
}
60
60
61
61
size_t CircularBuffer::Capacity () const
62
62
{
63
- return m_capacity;
63
+ return m_capacity;
64
64
}
65
65
66
66
bool CircularBuffer::Empty () const
67
67
{
68
- return m_readOffset == m_writeOffset;
68
+ return m_readOffset == m_writeOffset;
69
69
}
70
70
71
71
size_t CircularBuffer::Available () const
72
72
{
73
- return m_writeOffset < m_readOffset ? m_readOffset - m_writeOffset - 1 : m_capacity - m_writeOffset + m_readOffset;
73
+ return m_writeOffset < m_readOffset ? m_readOffset - m_writeOffset - 1 : m_capacity - m_writeOffset + m_readOffset;
74
74
}
75
75
76
76
size_t CircularBuffer::Size () const
77
77
{
78
- return m_writeOffset < m_readOffset ? m_capacity + 1 - m_readOffset + m_writeOffset : m_writeOffset - m_readOffset;
78
+ return m_writeOffset < m_readOffset ? m_capacity + 1 - m_readOffset + m_writeOffset : m_writeOffset - m_readOffset;
79
79
}
80
80
81
81
bool CircularBuffer::Full () const
82
82
{
83
- // std::cerr << "full: " << NextPosition(m_writeOffset) << " ?= " << m_readOffset << "\n"
84
- return NextPosition (m_writeOffset) == m_readOffset; // actually full
83
+ // std::cerr << "full: " << NextPosition(m_writeOffset) << " ?= " << m_readOffset << "\n"
84
+ return NextPosition (m_writeOffset) == m_readOffset; // actually full
85
85
}
86
86
87
87
std::string CircularBuffer::ReadStringZ ()
88
88
{
89
- // std::cerr << " ReadStringZ\n";
89
+ // std::cerr << " ReadStringZ\n";
90
90
91
- std::string message;
92
- while (auto ch = Read ())
93
- {
94
- message.push_back (ch);
95
- }
96
- // std::cerr << " ReadStringZ done\n";
97
- return message;
91
+ std::string message;
92
+ while (auto ch = Read ())
93
+ {
94
+ message.push_back (ch);
95
+ }
96
+ // std::cerr << " ReadStringZ done\n";
97
+ return message;
98
98
}
99
99
100
100
void CircularBuffer::WriteStringZ (const char * message)
101
101
{
102
- // std::cerr << " WriteStringZ\n";
103
- while (*message != 0 )
104
- {
105
- Write (*message);
106
- ++message;
107
- }
108
- Write (' \0 ' );
109
- // std::cerr << " WriteStringZ done\n";
102
+ // std::cerr << " WriteStringZ\n";
103
+ while (*message != 0 )
104
+ {
105
+ Write (*message);
106
+ ++message;
107
+ }
108
+ Write (' \0 ' );
109
+ // std::cerr << " WriteStringZ done\n";
110
110
}
111
111
112
112
size_t CircularBuffer::NextPosition (size_t offset) const
113
113
{
114
- return offset == m_capacity ? 0 : offset + 1 ;
114
+ return offset == m_capacity ? 0 : offset + 1 ;
115
115
}
116
116
117
117
const char * CircularBuffer::ReadPointer () const
118
118
{
119
- return m_buffer.get () + m_readOffset;
119
+ return m_buffer.get () + m_readOffset;
120
120
}
121
121
122
122
char * CircularBuffer::WritePointer () const
123
123
{
124
- return m_buffer.get () + m_writeOffset;
124
+ return m_buffer.get () + m_writeOffset;
125
125
}
126
126
127
127
void CircularBuffer::IncreaseReadPointer ()
128
128
{
129
- m_readOffset = NextPosition (m_readOffset);
129
+ m_readOffset = NextPosition (m_readOffset);
130
130
}
131
131
132
132
void CircularBuffer::IncreaseWritePointer ()
133
133
{
134
- m_writeOffset = NextPosition (m_writeOffset);
134
+ m_writeOffset = NextPosition (m_writeOffset);
135
135
}
136
136
137
137
void CircularBuffer::Clear ()
138
138
{
139
- m_readOffset = 0 ;
140
- m_writeOffset = 0 ;
139
+ m_readOffset = 0 ;
140
+ m_writeOffset = 0 ;
141
141
}
142
142
143
143
void CircularBuffer::Swap (CircularBuffer& cb)
144
144
{
145
- std::swap (m_capacity, cb.m_capacity );
146
- std::swap (m_buffer, cb.m_buffer );
147
- std::swap (m_readOffset, cb.m_readOffset );
148
- std::swap (m_writeOffset, cb.m_writeOffset );
145
+ std::swap (m_capacity, cb.m_capacity );
146
+ std::swap (m_buffer, cb.m_buffer );
147
+ std::swap (m_readOffset, cb.m_readOffset );
148
+ std::swap (m_writeOffset, cb.m_writeOffset );
149
149
}
150
150
151
151
char CircularBuffer::Read ()
152
152
{
153
- if (Empty ())
154
- {
155
- throw std::exception (" Read from empty buffer!" );
156
- }
153
+ if (Empty ())
154
+ {
155
+ throw std::exception (" Read from empty buffer!" );
156
+ }
157
157
158
- auto value = *ReadPointer ();
159
- // std::cerr << " " << m_readOffset << " => " << unsigned int(unsigned char(value)) << "\n";
160
- IncreaseReadPointer ();
161
- return value;
158
+ auto value = *ReadPointer ();
159
+ // std::cerr << " " << m_readOffset << " => " << unsigned int(unsigned char(value)) << "\n";
160
+ IncreaseReadPointer ();
161
+ return value;
162
162
}
163
163
164
164
void CircularBuffer::Write (char value)
165
165
{
166
- // std::cerr << " " << m_writeOffset << " <= " << unsigned int(unsigned char(value)) << "\n";
167
- *WritePointer () = value;
168
- IncreaseWritePointer ();
166
+ // std::cerr << " " << m_writeOffset << " <= " << unsigned int(unsigned char(value)) << "\n";
167
+ *WritePointer () = value;
168
+ IncreaseWritePointer ();
169
169
}
170
170
171
171
void CircularBuffer::DumpStats () const
172
172
{
173
- std::cerr << " m_readOffset: " << m_readOffset << " \n " ;
174
- std::cerr << " m_writeOffset: " << m_writeOffset << " \n " ;
175
- std::cerr << " Empty: " << (Empty () ? " true" : " false" ) << " \n " ;
176
- std::cerr << " Full: " << (Full () ? " true" : " false" ) << " \n " ;
173
+ std::cerr << " m_readOffset: " << m_readOffset << " \n " ;
174
+ std::cerr << " m_writeOffset: " << m_writeOffset << " \n " ;
175
+ std::cerr << " Empty: " << (Empty () ? " true" : " false" ) << " \n " ;
176
+ std::cerr << " Full: " << (Full () ? " true" : " false" ) << " \n " ;
177
177
}
178
178
179
179
} // namespace fusion
0 commit comments