Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions
pcm.h File Reference
#include <sound/pcm.h>
#include "driver.h"
#include "usbdefs.h"

Go to the source code of this file.

Data Structures

struct  line6_pcm_properties
 
struct  snd_line6_pcm
 

Macros

#define LINE6_ISO_BUFFERS   2
 
#define LINE6_ISO_PACKETS   1
 
#define LINE6_ISO_INTERVAL   1
 
#define get_substream(line6pcm, stream)   (line6pcm->pcm->streams[stream].substream)
 

Enumerations

enum  {
  LINE6_INDEX_PCM_ALSA_PLAYBACK_BUFFER, LINE6_INDEX_PCM_ALSA_PLAYBACK_STREAM, LINE6_INDEX_PCM_ALSA_CAPTURE_BUFFER, LINE6_INDEX_PCM_ALSA_CAPTURE_STREAM,
  LINE6_INDEX_PCM_MONITOR_PLAYBACK_BUFFER, LINE6_INDEX_PCM_MONITOR_PLAYBACK_STREAM, LINE6_INDEX_PCM_MONITOR_CAPTURE_BUFFER, LINE6_INDEX_PCM_MONITOR_CAPTURE_STREAM,
  LINE6_INDEX_PAUSE_PLAYBACK, LINE6_INDEX_PREPARED, LINE6_BIT =(PCM_ALSA_PLAYBACK_BUFFER), LINE6_BIT =(PCM_ALSA_PLAYBACK_BUFFER),
  LINE6_BIT =(PCM_ALSA_PLAYBACK_BUFFER), LINE6_BIT =(PCM_ALSA_PLAYBACK_BUFFER), LINE6_BIT =(PCM_ALSA_PLAYBACK_BUFFER), LINE6_BIT =(PCM_ALSA_PLAYBACK_BUFFER),
  LINE6_BIT =(PCM_ALSA_PLAYBACK_BUFFER), LINE6_BIT =(PCM_ALSA_PLAYBACK_BUFFER), LINE6_BIT =(PCM_ALSA_PLAYBACK_BUFFER), LINE6_BIT =(PCM_ALSA_PLAYBACK_BUFFER),
  LINE6_BITS_PCM_ALSA_BUFFER, LINE6_BITS_PCM_ALSA_STREAM, LINE6_BITS_PCM_MONITOR, LINE6_BITS_PLAYBACK_BUFFER,
  LINE6_BITS_PLAYBACK_STREAM, LINE6_BITS_CAPTURE_BUFFER, LINE6_BITS_CAPTURE_STREAM, LINE6_BITS_STREAM
}
 

Functions

int line6_init_pcm (struct usb_line6 *line6, struct line6_pcm_properties *properties)
 
int snd_line6_trigger (struct snd_pcm_substream *substream, int cmd)
 
int snd_line6_prepare (struct snd_pcm_substream *substream)
 
void line6_pcm_disconnect (struct snd_line6_pcm *line6pcm)
 
int line6_pcm_acquire (struct snd_line6_pcm *line6pcm, int channels)
 
int line6_pcm_release (struct snd_line6_pcm *line6pcm, int channels)
 

Macro Definition Documentation

#define get_substream (   line6pcm,
  stream 
)    (line6pcm->pcm->streams[stream].substream)

Definition at line 45 of file pcm.h.

#define LINE6_ISO_BUFFERS   2

Definition at line 25 of file pcm.h.

#define LINE6_ISO_INTERVAL   1

Definition at line 36 of file pcm.h.

#define LINE6_ISO_PACKETS   1

Definition at line 33 of file pcm.h.

Enumeration Type Documentation

anonymous enum
Enumerator:
LINE6_INDEX_PCM_ALSA_PLAYBACK_BUFFER 
LINE6_INDEX_PCM_ALSA_PLAYBACK_STREAM 
LINE6_INDEX_PCM_ALSA_CAPTURE_BUFFER 
LINE6_INDEX_PCM_ALSA_CAPTURE_STREAM 
LINE6_INDEX_PCM_MONITOR_PLAYBACK_BUFFER 
LINE6_INDEX_PCM_MONITOR_PLAYBACK_STREAM 
LINE6_INDEX_PCM_MONITOR_CAPTURE_BUFFER 
LINE6_INDEX_PCM_MONITOR_CAPTURE_STREAM 
LINE6_INDEX_PAUSE_PLAYBACK 
LINE6_INDEX_PREPARED 
LINE6_BIT 
LINE6_BIT 
LINE6_BIT 
LINE6_BIT 
LINE6_BIT 
LINE6_BIT 
LINE6_BIT 
LINE6_BIT 
LINE6_BIT 
LINE6_BIT 
LINE6_BITS_PCM_ALSA_BUFFER 
LINE6_BITS_PCM_ALSA_STREAM 
LINE6_BITS_PCM_MONITOR 
LINE6_BITS_PLAYBACK_BUFFER 
LINE6_BITS_PLAYBACK_STREAM 
LINE6_BITS_CAPTURE_BUFFER 
LINE6_BITS_CAPTURE_STREAM 
LINE6_BITS_STREAM 

Definition at line 82 of file pcm.h.

Function Documentation

int line6_init_pcm ( struct usb_line6 line6,
struct line6_pcm_properties properties 
)

Definition at line 408 of file pcm.c.

int line6_pcm_acquire ( struct snd_line6_pcm line6pcm,
int  channels 
)

Definition at line 101 of file pcm.c.

void line6_pcm_disconnect ( struct snd_line6_pcm line6pcm)

Definition at line 394 of file pcm.c.

int line6_pcm_release ( struct snd_line6_pcm line6pcm,
int  channels 
)

Definition at line 197 of file pcm.c.

int snd_line6_prepare ( struct snd_pcm_substream substream)

Definition at line 538 of file pcm.c.

int snd_line6_trigger ( struct snd_pcm_substream substream,
int  cmd 
)

Definition at line 223 of file pcm.c.