Skip to content

Commit 50d9af3

Browse files
committed
byte order: move declarations into namespace NSROOT
1 parent 318d0e7 commit 50d9af3

File tree

1 file changed

+22
-16
lines changed

1 file changed

+22
-16
lines changed

noson/src/private/byteorder.h

+22-16
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,10 @@
1919
#ifndef BYTEORDER_H
2020
#define BYTEORDER_H
2121

22-
#include <inttypes.h>
23-
#include <string.h>
22+
#include "local_config.h"
23+
24+
#include <cinttypes>
25+
#include <cstring>
2426

2527
#ifndef BYTE_ORDER
2628
#define LITTLE_ENDIAN 1234
@@ -31,6 +33,8 @@ extern int __endianess__;
3133
#define is_big_endian (BYTE_ORDER == BIG_ENDIAN)
3234
#define is_little_endian (BYTE_ORDER == LITTLE_ENDIAN)
3335

36+
namespace NSROOT
37+
{
3438

3539
template <typename T> inline T fromUnaligned(const void * data)
3640
{
@@ -44,24 +48,24 @@ template <typename T> inline void toUnaligned(void * data, T val)
4448
memcpy(data, &val, sizeof(T));
4549
}
4650

47-
static inline int8_t read8(const void * data)
51+
inline int8_t read8(const void * data)
4852
{
4953
return fromUnaligned<int8_t>(data);
5054
}
5155

52-
static inline void write8(void * data, int8_t val)
56+
inline void write8(void * data, int8_t val)
5357
{
5458
toUnaligned(data, val);
5559
}
5660

57-
static inline int16_t swap16(int16_t val)
61+
inline int16_t swap16(int16_t val)
5862
{
5963
return (int16_t)(0 |
6064
(((uint32_t)val & 0x00ff) << 8) |
6165
(((uint32_t)val & 0xff00) >> 8));
6266
}
6367

64-
static inline int32_t swap32(int32_t val)
68+
inline int32_t swap32(int32_t val)
6569
{
6670
return (int32_t)(0 |
6771
(((uint32_t)val & 0x000000ff) << 24) |
@@ -71,39 +75,39 @@ static inline int32_t swap32(int32_t val)
7175
);
7276
}
7377

74-
static inline int16_t read16le(const void * data)
78+
inline int16_t read16le(const void * data)
7579
{
7680
int16_t val = fromUnaligned<int16_t>(data);
7781
if (is_little_endian)
7882
return val;
7983
return swap16(val);
8084
}
8185

82-
static inline void write16le(void * data, int16_t val)
86+
inline void write16le(void * data, int16_t val)
8387
{
8488
if (is_little_endian)
8589
toUnaligned(data, val);
8690
else
8791
toUnaligned(data, swap16(val));
8892
}
8993

90-
static inline int16_t read16be(const void * data)
94+
inline int16_t read16be(const void * data)
9195
{
9296
int16_t val = fromUnaligned<int16_t>(data);
9397
if (is_big_endian)
9498
return val;
9599
return swap16(val);
96100
}
97101

98-
static inline void write16be(void * data, int16_t val)
102+
inline void write16be(void * data, int16_t val)
99103
{
100104
if (is_big_endian)
101105
toUnaligned(data, val);
102106
else
103107
toUnaligned(data, swap16(val));
104108
}
105109

106-
static inline int32_t read24le(const void * data)
110+
inline int32_t read24le(const void * data)
107111
{
108112
const char * p = (const char*)data;
109113
int32_t val = fromUnaligned<uint8_t>(&p[2]) << 16;
@@ -114,7 +118,7 @@ static inline int32_t read24le(const void * data)
114118
return val;
115119
}
116120

117-
static inline int32_t read24be(const void * data)
121+
inline int32_t read24be(const void * data)
118122
{
119123
const char * p = (const char*)data;
120124
int32_t val = fromUnaligned<uint8_t>(&p[0]) << 16;
@@ -125,37 +129,39 @@ static inline int32_t read24be(const void * data)
125129
return val;
126130
}
127131

128-
static inline int32_t read32le(const void * data)
132+
inline int32_t read32le(const void * data)
129133
{
130134
int32_t val = fromUnaligned<int32_t>(data);
131135
if (is_little_endian)
132136
return val;
133137
return swap32(val);
134138
}
135139

136-
static inline void write32le(void * data, int32_t val)
140+
inline void write32le(void * data, int32_t val)
137141
{
138142
if (is_little_endian)
139143
toUnaligned(data, val);
140144
else
141145
toUnaligned(data, swap32(val));
142146
}
143147

144-
static inline int32_t read32be(const void * data)
148+
inline int32_t read32be(const void * data)
145149
{
146150
int32_t val = fromUnaligned<int32_t>(data);
147151
if (is_big_endian)
148152
return val;
149153
return swap32(val);
150154
}
151155

152-
static inline void write32be(void * data, int32_t val)
156+
inline void write32be(void * data, int32_t val)
153157
{
154158
if (is_big_endian)
155159
toUnaligned(data, val);
156160
else
157161
toUnaligned(data, swap32(val));
158162
}
159163

164+
}
165+
160166
#endif /* BYTEORDER_H */
161167

0 commit comments

Comments
 (0)