FreeBSD kernel sound device code
intpcm.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define INTPCM_DECLARE_OP_WRITE(SIGN, BIT, ENDIAN, SHIFT)
 
#define INTPCM_DECLARE_OP_8(SIGN, ENDIAN)
 
#define INTPCM_DECLARE_OP_16(SIGN, ENDIAN)
 
#define INTPCM_DECLARE_OP_24(SIGN, ENDIAN)
 
#define INTPCM_DECLARE_OP_32(SIGN, ENDIAN)
 
#define INTPCM_DECLARE(t)
 

Typedefs

typedef intpcm_t intpcm_read_t(uint8_t *)
 
typedef void intpcm_write_t(uint8_t *, intpcm_t)
 

Functions

intpcm_read_tfeeder_format_read_op (uint32_t)
 
intpcm_write_tfeeder_format_write_op (uint32_t)
 

Macro Definition Documentation

◆ INTPCM_DECLARE

#define INTPCM_DECLARE (   t)

Definition at line 90 of file intpcm.h.

◆ INTPCM_DECLARE_OP_16

#define INTPCM_DECLARE_OP_16 (   SIGN,
  ENDIAN 
)
Value:
static __inline intpcm_t \
intpcm_read_##SIGN##16##ENDIAN(uint8_t *src) \
{ \
\
return (_PCM_READ_##SIGN##16##_##ENDIAN(src) << 16); \
} \
INTPCM_DECLARE_OP_WRITE(SIGN, 16, ENDIAN, 16)
u_int32_t src
Definition: mixer_if.m:66

Definition at line 57 of file intpcm.h.

◆ INTPCM_DECLARE_OP_24

#define INTPCM_DECLARE_OP_24 (   SIGN,
  ENDIAN 
)
Value:
static __inline intpcm_t \
intpcm_read_##SIGN##24##ENDIAN(uint8_t *src) \
{ \
\
return (_PCM_READ_##SIGN##24##_##ENDIAN(src) << 8); \
} \
INTPCM_DECLARE_OP_WRITE(SIGN, 24, ENDIAN, 8)

Definition at line 66 of file intpcm.h.

◆ INTPCM_DECLARE_OP_32

#define INTPCM_DECLARE_OP_32 (   SIGN,
  ENDIAN 
)
Value:
static __inline intpcm_t \
intpcm_read_##SIGN##32##ENDIAN(uint8_t *src) \
{ \
\
return (_PCM_READ_##SIGN##32##_##ENDIAN(src)); \
} \
\
static __inline void \
intpcm_write_##SIGN##32##ENDIAN(uint8_t *dst, intpcm_t v) \
{ \
\
_PCM_WRITE_##SIGN##32##_##ENDIAN(dst, v); \
}
int32_t intpcm_t
Definition: pcm.h:54

Definition at line 75 of file intpcm.h.

◆ INTPCM_DECLARE_OP_8

#define INTPCM_DECLARE_OP_8 (   SIGN,
  ENDIAN 
)
Value:
static __inline intpcm_t \
intpcm_read_##SIGN##8##ENDIAN(uint8_t *src) \
{ \
\
return (_PCM_READ_##SIGN##8##_##ENDIAN(src) << 24); \
} \
INTPCM_DECLARE_OP_WRITE(SIGN, 8, ENDIAN, 24)

Definition at line 48 of file intpcm.h.

◆ INTPCM_DECLARE_OP_WRITE

#define INTPCM_DECLARE_OP_WRITE (   SIGN,
  BIT,
  ENDIAN,
  SHIFT 
)
Value:
static __inline void \
intpcm_write_##SIGN##BIT##ENDIAN(uint8_t *dst, intpcm_t v) \
{ \
\
_PCM_WRITE_##SIGN##BIT##_##ENDIAN(dst, v >> SHIFT); \
}

Definition at line 40 of file intpcm.h.

Typedef Documentation

◆ intpcm_read_t

typedef intpcm_t intpcm_read_t(uint8_t *)

Definition at line 34 of file intpcm.h.

◆ intpcm_write_t

typedef void intpcm_write_t(uint8_t *, intpcm_t)

Definition at line 35 of file intpcm.h.

Function Documentation

◆ feeder_format_read_op()

intpcm_read_t * feeder_format_read_op ( uint32_t  format)

Definition at line 279 of file feeder_format.c.

References AFMT_ENCODING, feed_format_ops, FEEDFORMAT_TAB_SIZE, format, and read.

Referenced by feed_matrix_init().

Here is the caller graph for this function:

◆ feeder_format_write_op()

intpcm_write_t * feeder_format_write_op ( uint32_t  format)

Definition at line 292 of file feeder_format.c.

References AFMT_ENCODING, feed_format_ops, FEEDFORMAT_TAB_SIZE, format, and write.

Referenced by feed_matrix_init().

Here is the caller graph for this function: