~wiml-omni/libdrizzle/date-time

« back to all changes in this revision

Viewing changes to libdrizzle-5.1/constants.h

  • Committer: Continuous Integration
  • Date: 2013-03-12 18:25:57 UTC
  • mfrom: (107.2.14 libdrizzle)
  • Revision ID: ci@drizzle.org-20130312182557-lqxgqbknaph66brl
Merge lp:~wiml/libdrizzle/integer-sizes Build: jenkins-Libdrizzle-74

Show diffs side-by-side

added added

removed removed

Lines of Context:
604
604
 */
605
605
 
606
606
/* Protocol unpacking macros. */
607
 
#define drizzle_get_byte2(__buffer) \
608
 
  (uint16_t)((__buffer)[0] | \
609
 
            ((__buffer)[1] << 8))
610
 
#define drizzle_get_byte3(__buffer) \
611
 
  (uint32_t)((__buffer)[0] | \
612
 
            ((__buffer)[1] << 8) | \
613
 
            ((__buffer)[2] << 16))
614
 
#define drizzle_get_byte4(__buffer) \
615
 
  (uint32_t)((__buffer)[0] | \
616
 
            ((__buffer)[1] << 8) | \
617
 
            ((__buffer)[2] << 16) | \
618
 
            ((__buffer)[3] << 24))
619
 
#define drizzle_get_byte8(__buffer) \
620
 
  ((uint64_t)(__buffer)[0] | \
621
 
  ((uint64_t)(__buffer)[1] << 8) | \
622
 
  ((uint64_t)(__buffer)[2] << 16) | \
623
 
  ((uint64_t)(__buffer)[3] << 24) | \
624
 
  ((uint64_t)(__buffer)[4] << 32) | \
625
 
  ((uint64_t)(__buffer)[5] << 40) | \
626
 
  ((uint64_t)(__buffer)[6] << 48) | \
627
 
  ((uint64_t)(__buffer)[7] << 56))
 
607
#define drizzle_get_byte2(__buffer)               \
 
608
            ((((uint8_t *)__buffer)[0]) |         \
 
609
  ((uint16_t)(((uint8_t *)__buffer)[1]) << 8))
 
610
#define drizzle_get_byte3(__buffer)               \
 
611
             (((uint8_t *)__buffer)[0] |          \
 
612
  ((uint32_t)(((uint8_t *)__buffer)[1]) << 8) |   \
 
613
  ((uint32_t)(((uint8_t *)__buffer)[2]) << 16))
 
614
#define drizzle_get_byte4(__buffer)               \
 
615
             (((uint8_t *)__buffer)[0] |          \
 
616
  ((uint32_t)(((uint8_t *)__buffer)[1]) << 8) |   \
 
617
  ((uint32_t)(((uint8_t *)__buffer)[2]) << 16) |  \
 
618
  ((uint32_t)(((uint8_t *)__buffer)[3]) << 24))
 
619
#define drizzle_get_byte8(__buffer)               \
 
620
  (drizzle_get_byte4(__buffer) |                  \
 
621
  ((uint64_t)drizzle_get_byte4(((uint8_t *)__buffer)+4) << 32))
628
622
 
629
623
/* Protocol packing macros. */
630
624
#define drizzle_set_byte2(__buffer, __int) do { \