Electroneum
macros.h File Reference
#include <stdint.h>
Include dependency graph for macros.h:

Go to the source code of this file.

Macros

#define UNUSED(arg)   (void)(arg)
 
#define INLINE   static inline
 
#define READNU32(p)   readnu32(p)
 
#define READNU16(p)   readnu16(p)
 
#define WRITENU32(p, n)   writenu32(p, n)
 
#define WRITENU16(p, n)   writenu16(p, n)
 

Functions

INLINE uint32_t readnu32 (const uint8_t *p)
 
INLINE uint16_t readnu16 (const uint8_t *p)
 
INLINE void writenu32 (uint8_t *p, uint32_t n)
 
INLINE void writenu16 (uint8_t *p, uint16_t n)
 

Macro Definition Documentation

◆ INLINE

#define INLINE   static inline

Definition at line 16 of file macros.h.

◆ READNU16

#define READNU16 (   p)    readnu16(p)

Definition at line 31 of file macros.h.

◆ READNU32

#define READNU32 (   p)    readnu32(p)

Definition at line 26 of file macros.h.

◆ UNUSED

#define UNUSED (   arg)    (void)(arg)

Definition at line 11 of file macros.h.

◆ WRITENU16

#define WRITENU16 (   p,
 
)    writenu16(p, n)

Definition at line 45 of file macros.h.

◆ WRITENU32

#define WRITENU32 (   p,
 
)    writenu32(p, n)

Definition at line 39 of file macros.h.

Function Documentation

◆ readnu16()

INLINE uint16_t readnu16 ( const uint8_t p)

Definition at line 27 of file macros.h.

28 {
29  return (p[0] << 8 | p[1]);
30 }

◆ readnu32()

INLINE uint32_t readnu32 ( const uint8_t p)

Definition at line 22 of file macros.h.

23 {
24  return (p[0] << 24 | p[1] << 16 | p[2] << 8 | p[3]);
25 }

◆ writenu16()

INLINE void writenu16 ( uint8_t p,
uint16_t  n 
)

Definition at line 40 of file macros.h.

41 {
42  p[0] = (n & 0xff00) >> 8;
43  p[1] = n & 0xff;
44 }

◆ writenu32()

INLINE void writenu32 ( uint8_t p,
uint32_t  n 
)

Definition at line 32 of file macros.h.

33 {
34  p[0] = (n & 0xff000000) >> 24;
35  p[1] = (n & 0xff0000) >> 16;
36  p[2] = (n & 0xff00) >> 8;
37  p[3] = n & 0xff;
38 }