libavutil/intreadwrite.h File Reference

#include <stdint.h>
#include "libavutil/avconfig.h"
#include "attributes.h"
#include "bswap.h"
#include "config.h"
#include "x86/intreadwrite.h"
#include "bswap.h"

Go to the source code of this file.

Data Structures

union  av_alias
union  av_alias
union  av_alias

Defines

#define AV_RN(s, p)   (((const av_alias##s*)(p))->u##s)
#define AV_WN(s, p, v)   (((av_alias##s*)(p))->u##s = (v))
#define AV_RN16(p)   AV_RN(16, p)
#define AV_RN32(p)   AV_RN(32, p)
#define AV_RN64(p)   AV_RN(64, p)
#define AV_WN16(p, v)   AV_WN(16, p, v)
#define AV_WN32(p, v)   AV_WN(32, p, v)
#define AV_WN64(p, v)   AV_WN(64, p, v)
#define AV_RB(s, p)   av_bswap##s(AV_RN##s(p))
#define AV_WB(s, p, v)   AV_WN##s(p, av_bswap##s(v))
#define AV_RL(s, p)   AV_RN##s(p)
#define AV_WL(s, p, v)   AV_WN##s(p, v)
#define AV_RB8(x)   (((const uint8_t*)(x))[0])
#define AV_WB8(p, d)   do { ((uint8_t*)(p))[0] = (d); } while(0)
#define AV_RL8(x)   AV_RB8(x)
#define AV_WL8(p, d)   AV_WB8(p, d)
#define AV_RB16(p)   AV_RB(16, p)
#define AV_WB16(p, v)   AV_WB(16, p, v)
#define AV_RL16(p)   AV_RL(16, p)
#define AV_WL16(p, v)   AV_WL(16, p, v)
#define AV_RB32(p)   AV_RB(32, p)
#define AV_WB32(p, v)   AV_WB(32, p, v)
#define AV_RL32(p)   AV_RL(32, p)
#define AV_WL32(p, v)   AV_WL(32, p, v)
#define AV_RB64(p)   AV_RB(64, p)
#define AV_WB64(p, v)   AV_WB(64, p, v)
#define AV_RL64(p)   AV_RL(64, p)
#define AV_WL64(p, v)   AV_WL(64, p, v)
#define AV_RB24(x)
#define AV_WB24(p, d)
#define AV_RL24(x)
#define AV_WL24(p, d)
#define AV_RNA(s, p)   (((const av_alias##s*)(p))->u##s)
#define AV_WNA(s, p, v)   (((av_alias##s*)(p))->u##s = (v))
#define AV_RN16A(p)   AV_RNA(16, p)
#define AV_RN32A(p)   AV_RNA(32, p)
#define AV_RN64A(p)   AV_RNA(64, p)
#define AV_WN16A(p, v)   AV_WNA(16, p, v)
#define AV_WN32A(p, v)   AV_WNA(32, p, v)
#define AV_WN64A(p, v)   AV_WNA(64, p, v)
#define AV_COPY(n, d, s)   (((av_alias##n*)(d))->u##n = ((const av_alias##n*)(s))->u##n)
#define AV_COPY16(d, s)   AV_COPY(16, d, s)
#define AV_COPY32(d, s)   AV_COPY(32, d, s)
#define AV_COPY64(d, s)   AV_COPY(64, d, s)
#define AV_COPY128(d, s)
#define AV_SWAP(n, a, b)   FFSWAP(av_alias##n, *(av_alias##n*)(a), *(av_alias##n*)(b))
#define AV_SWAP64(a, b)   AV_SWAP(64, a, b)
#define AV_ZERO(n, d)   (((av_alias##n*)(d))->u##n = 0)
#define AV_ZERO16(d)   AV_ZERO(16, d)
#define AV_ZERO32(d)   AV_ZERO(32, d)
#define AV_ZERO64(d)   AV_ZERO(64, d)
#define AV_ZERO128(d)

Define Documentation

#define AV_COPY (   n,
  d,
  s 
)    (((av_alias##n*)(d))->u##n = ((const av_alias##n*)(s))->u##n)

Definition at line 471 of file intreadwrite.h.

#define AV_COPY128 (   d,
  s 
)
Value:
do {                                       \
        AV_COPY64(d, s);                       \
        AV_COPY64((char*)(d)+8, (char*)(s)+8); \
    } while(0)

Definition at line 487 of file intreadwrite.h.

#define AV_COPY16 (   d,
  s 
)    AV_COPY(16, d, s)

Definition at line 475 of file intreadwrite.h.

#define AV_COPY32 (   d,
  s 
)    AV_COPY(32, d, s)

Definition at line 479 of file intreadwrite.h.

#define AV_COPY64 (   d,
  s 
)    AV_COPY(64, d, s)

Definition at line 483 of file intreadwrite.h.

#define AV_RB (   s,
  p 
)    av_bswap##s(AV_RN##s(p))

Definition at line 351 of file intreadwrite.h.

#define AV_RB16 (   p  )     AV_RB(16, p)

Definition at line 364 of file intreadwrite.h.

#define AV_RB24 (   x  ) 
Value:
((((const uint8_t*)(x))[0] << 16) |         \
     (((const uint8_t*)(x))[1] <<  8) |         \
      ((const uint8_t*)(x))[2])

Definition at line 406 of file intreadwrite.h.

#define AV_RB32 (   p  )     AV_RB(32, p)

Definition at line 378 of file intreadwrite.h.

#define AV_RB64 (   p  )     AV_RB(64, p)

Definition at line 392 of file intreadwrite.h.

#define AV_RB8 (   x  )     (((const uint8_t*)(x))[0])

Definition at line 357 of file intreadwrite.h.

#define AV_RL (   s,
  p 
)    AV_RN##s(p)

Definition at line 353 of file intreadwrite.h.

#define AV_RL16 (   p  )     AV_RL(16, p)

Definition at line 371 of file intreadwrite.h.

#define AV_RL24 (   x  ) 
Value:
((((const uint8_t*)(x))[2] << 16) |         \
     (((const uint8_t*)(x))[1] <<  8) |         \
      ((const uint8_t*)(x))[0])

Definition at line 420 of file intreadwrite.h.

#define AV_RL32 (   p  )     AV_RL(32, p)

Definition at line 385 of file intreadwrite.h.

#define AV_RL64 (   p  )     AV_RL(64, p)

Definition at line 399 of file intreadwrite.h.

#define AV_RL8 (   x  )     AV_RB8(x)

Definition at line 360 of file intreadwrite.h.

#define AV_RN (   s,
  p 
)    (((const av_alias##s*)(p))->u##s)

Definition at line 202 of file intreadwrite.h.

#define AV_RN16 (   p  )     AV_RN(16, p)

Definition at line 322 of file intreadwrite.h.

#define AV_RN16A (   p  )     AV_RNA(16, p)

Definition at line 442 of file intreadwrite.h.

#define AV_RN32 (   p  )     AV_RN(32, p)

Definition at line 326 of file intreadwrite.h.

#define AV_RN32A (   p  )     AV_RNA(32, p)

Definition at line 446 of file intreadwrite.h.

#define AV_RN64 (   p  )     AV_RN(64, p)

Definition at line 330 of file intreadwrite.h.

#define AV_RN64A (   p  )     AV_RNA(64, p)

Definition at line 450 of file intreadwrite.h.

#define AV_RNA (   s,
  p 
)    (((const av_alias##s*)(p))->u##s)

Definition at line 438 of file intreadwrite.h.

#define AV_SWAP (   n,
  a,
  b 
)    FFSWAP(av_alias##n, *(av_alias##n*)(a), *(av_alias##n*)(b))

Definition at line 494 of file intreadwrite.h.

#define AV_SWAP64 (   a,
  b 
)    AV_SWAP(64, a, b)

Definition at line 497 of file intreadwrite.h.

#define AV_WB (   s,
  p,
  v 
)    AV_WN##s(p, av_bswap##s(v))

Definition at line 352 of file intreadwrite.h.

#define AV_WB16 (   p,
  v 
)    AV_WB(16, p, v)

Definition at line 367 of file intreadwrite.h.

#define AV_WB24 (   p,
  d 
)
Value:
do {                   \
        ((uint8_t*)(p))[2] = (d);               \
        ((uint8_t*)(p))[1] = (d)>>8;            \
        ((uint8_t*)(p))[0] = (d)>>16;           \
    } while(0)

Definition at line 412 of file intreadwrite.h.

#define AV_WB32 (   p,
  v 
)    AV_WB(32, p, v)

Definition at line 381 of file intreadwrite.h.

#define AV_WB64 (   p,
  v 
)    AV_WB(64, p, v)

Definition at line 395 of file intreadwrite.h.

#define AV_WB8 (   p,
  d 
)    do { ((uint8_t*)(p))[0] = (d); } while(0)

Definition at line 358 of file intreadwrite.h.

#define AV_WL (   s,
  p,
  v 
)    AV_WN##s(p, v)

Definition at line 354 of file intreadwrite.h.

#define AV_WL16 (   p,
  v 
)    AV_WL(16, p, v)

Definition at line 374 of file intreadwrite.h.

#define AV_WL24 (   p,
  d 
)
Value:
do {                   \
        ((uint8_t*)(p))[0] = (d);               \
        ((uint8_t*)(p))[1] = (d)>>8;            \
        ((uint8_t*)(p))[2] = (d)>>16;           \
    } while(0)

Definition at line 426 of file intreadwrite.h.

#define AV_WL32 (   p,
  v 
)    AV_WL(32, p, v)

Definition at line 388 of file intreadwrite.h.

#define AV_WL64 (   p,
  v 
)    AV_WL(64, p, v)

Definition at line 402 of file intreadwrite.h.

#define AV_WL8 (   p,
  d 
)    AV_WB8(p, d)

Definition at line 361 of file intreadwrite.h.

#define AV_WN (   s,
  p,
  v 
)    (((av_alias##s*)(p))->u##s = (v))

Definition at line 203 of file intreadwrite.h.

#define AV_WN16 (   p,
  v 
)    AV_WN(16, p, v)

Definition at line 334 of file intreadwrite.h.

#define AV_WN16A (   p,
  v 
)    AV_WNA(16, p, v)

Definition at line 454 of file intreadwrite.h.

#define AV_WN32 (   p,
  v 
)    AV_WN(32, p, v)

Definition at line 338 of file intreadwrite.h.

#define AV_WN32A (   p,
  v 
)    AV_WNA(32, p, v)

Definition at line 458 of file intreadwrite.h.

#define AV_WN64 (   p,
  v 
)    AV_WN(64, p, v)

Definition at line 342 of file intreadwrite.h.

#define AV_WN64A (   p,
  v 
)    AV_WNA(64, p, v)

Definition at line 462 of file intreadwrite.h.

#define AV_WNA (   s,
  p,
  v 
)    (((av_alias##s*)(p))->u##s = (v))

Definition at line 439 of file intreadwrite.h.

#define AV_ZERO (   n,
  d 
)    (((av_alias##n*)(d))->u##n = 0)

Definition at line 500 of file intreadwrite.h.

#define AV_ZERO128 (   d  ) 
Value:
do {                         \
        AV_ZERO64(d);            \
        AV_ZERO64((char*)(d)+8); \
    } while(0)

Definition at line 515 of file intreadwrite.h.

#define AV_ZERO16 (   d  )     AV_ZERO(16, d)

Definition at line 503 of file intreadwrite.h.

#define AV_ZERO32 (   d  )     AV_ZERO(32, d)

Definition at line 507 of file intreadwrite.h.

#define AV_ZERO64 (   d  )     AV_ZERO(64, d)

Definition at line 511 of file intreadwrite.h.