*参照元 [#kd1a2f5f]
#backlinks

*説明 [#ec0830ca]
-パス: [[linux-2.6.33/include/sound/pcm.h]]

-FIXME: これは何?
--説明


**参考 [#g8baeaba]


*実装 [#f4cb0586]
 struct snd_pcm_runtime {
 	/* -- Status -- */
 	struct snd_pcm_substream *trigger_master;
-
--[[linux-2.6.33/snd_pcm_substream]]

 	struct timespec trigger_tstamp;	/* trigger timestamp */
-
--[[linux-2.6.33/timespec]]

 	int overrange;
 	snd_pcm_uframes_t avail_max;
-
--[[linux-2.6.33/snd_pcm_uframes_t]]

 	snd_pcm_uframes_t hw_ptr_base;	/* Position at buffer restart */
 	snd_pcm_uframes_t hw_ptr_interrupt; /* Position at interrupt time */
 	unsigned long hw_ptr_jiffies;	/* Time when hw_ptr is updated */
 	snd_pcm_sframes_t delay;	/* extra delay; typically FIFO size */
 
-
--[[linux-2.6.33/snd_pcm_sframes_t]]

 	/* -- HW params -- */
 	snd_pcm_access_t access;	/* access mode */
-
--[[linux-2.6.33/snd_pcm_access_t]]

 	snd_pcm_format_t format;	/* SNDRV_PCM_FORMAT_* */
-
--[[linux-2.6.33/snd_pcm_format_t]]

 	snd_pcm_subformat_t subformat;	/* subformat */
-
--[[linux-2.6.33/snd_pcm_subformat_t]]

 	unsigned int rate;		/* rate in Hz */
 	unsigned int channels;		/* channels */
 	snd_pcm_uframes_t period_size;	/* period size */
 	unsigned int periods;		/* periods */
 	snd_pcm_uframes_t buffer_size;	/* buffer size */
 	snd_pcm_uframes_t min_align;	/* Min alignment for the format */
 	size_t byte_align;
 	unsigned int frame_bits;
 	unsigned int sample_bits;
 	unsigned int info;
 	unsigned int rate_num;
 	unsigned int rate_den;
 
 	/* -- SW params -- */
 	int tstamp_mode;		/* mmap timestamp is updated */
   	unsigned int period_step;
 	snd_pcm_uframes_t start_threshold;
 	snd_pcm_uframes_t stop_threshold;
 	snd_pcm_uframes_t silence_threshold; /* Silence filling happens when
 						noise is nearest than this */
 	snd_pcm_uframes_t silence_size;	/* Silence filling size */
 	snd_pcm_uframes_t boundary;	/* pointers wrap point */
 
 	snd_pcm_uframes_t silence_start; /* starting pointer to silence area */
 	snd_pcm_uframes_t silence_filled; /* size filled with silence */
 
 	union snd_pcm_sync_id sync;	/* hardware synchronization ID */
 
-
--[[linux-2.6.33/snd_pcm_sync_id]]

 	/* -- mmap -- */
 	struct snd_pcm_mmap_status *status;
-
--[[linux-2.6.33/snd_pcm_mmap_status]]

 	struct snd_pcm_mmap_control *control;
 
-
--[[linux-2.6.33/snd_pcm_mmap_control]]

 	/* -- locking / scheduling -- */
 	wait_queue_head_t sleep;
-
--[[linux-2.6.33/wait_queue_head_t]]

 	struct fasync_struct *fasync;
 
-
--[[linux-2.6.33/fasync_struct]]

 	/* -- private section -- */
 	void *private_data;
 	void (*private_free)(struct snd_pcm_runtime *runtime);
 
 	/* -- hardware description -- */
 	struct snd_pcm_hardware hw;
-
--[[linux-2.6.33/snd_pcm_hardware]]

 	struct snd_pcm_hw_constraints hw_constraints;
 
-
--[[linux-2.6.33/snd_pcm_hw_constraints]]

 	/* -- interrupt callbacks -- */
 	void (*transfer_ack_begin)(struct snd_pcm_substream *substream);
 	void (*transfer_ack_end)(struct snd_pcm_substream *substream);
 
 	/* -- timer -- */
 	unsigned int timer_resolution;	/* timer resolution */
 	int tstamp_type;		/* timestamp type */
 
 	/* -- DMA -- */           
 	unsigned char *dma_area;	/* DMA area */
 	dma_addr_t dma_addr;		/* physical bus address (not accessible from main CPU) */
-
--[[linux-2.6.33/dma_addr_t]]

 	size_t dma_bytes;		/* size of DMA area */
 
 	struct snd_dma_buffer *dma_buffer_p;	/* allocated buffer */
 
-
--[[linux-2.6.33/snd_dma_buffer]]

 #if defined(CONFIG_SND_PCM_OSS) || defined(CONFIG_SND_PCM_OSS_MODULE)
-
--[[linux-2.6.33/CONFIG_SND_PCM_OSS]]
-
--[[linux-2.6.33/CONFIG_SND_PCM_OSS_MODULE]]

 	/* -- OSS things -- */
 	struct snd_pcm_oss_runtime oss;
-
--[[linux-2.6.33/snd_pcm_oss_runtime]]

 #endif
 };


*コメント [#s11dbb18]


トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS