]> sigrok.org Git - libsigrok.git/commitdiff
libsigrok-internal.h: Add read_u24be helper function
authorMathieu Pilato <redacted>
Fri, 31 Mar 2023 19:59:15 +0000 (21:59 +0200)
committerGerhard Sittig <redacted>
Sun, 30 Apr 2023 08:10:01 +0000 (10:10 +0200)
src/libsigrok-internal.h

index df149bceee1cea16ca957a728e022f48dcea2a2e..215fce16b3efb68a9e3d8a66b41deee414244bd0 100644 (file)
@@ -172,6 +172,23 @@ static inline uint32_t read_u24le(const uint8_t *p)
        return u;
 }
 
+/**
+ * Read a 24 bits big endian unsigned integer out of memory.
+ * @param x a pointer to the input memory
+ * @return the corresponding unsigned integer
+ */
+static inline uint32_t read_u24be(const uint8_t *p)
+{
+       uint32_t u;
+
+       u = 0;
+       u <<= 8; u |= p[0];
+       u <<= 8; u |= p[1];
+       u <<= 8; u |= p[2];
+
+       return u;
+}
+
 /**
  * Read a 32 bits big endian unsigned integer out of memory.
  * @param x a pointer to the input memory