Linux kernel & device driver programming

Cross-Referenced Linux and Device Driver Code

[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ]
Version: [ 2.6.11.8 ] [ 2.6.25 ] [ 2.6.25.8 ] [ 2.6.31.13 ] Architecture: [ i386 ]
  1 /*
  2  * OSS compatible sequencer driver
  3  * timer handling routines
  4  *
  5  * Copyright (C) 1998,99 Takashi Iwai <tiwai@suse.de>
  6  *
  7  * This program is free software; you can redistribute it and/or modify
  8  * it under the terms of the GNU General Public License as published by
  9  * the Free Software Foundation; either version 2 of the License, or
 10  * (at your option) any later version.
 11  *
 12  * This program is distributed in the hope that it will be useful,
 13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
 14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 15  * GNU General Public License for more details.
 16  *
 17  * You should have received a copy of the GNU General Public License
 18  * along with this program; if not, write to the Free Software
 19  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 20  */
 21 
 22 #ifndef __SEQ_OSS_TIMER_H
 23 #define __SEQ_OSS_TIMER_H
 24 
 25 #include "seq_oss_device.h"
 26 
 27 /*
 28  * timer information definition
 29  */
 30 struct seq_oss_timer {
 31         struct seq_oss_devinfo *dp;
 32         reltime_t cur_tick;
 33         int realtime;
 34         int running;
 35         int tempo, ppq; /* ALSA queue */
 36         int oss_tempo, oss_timebase;
 37 };      
 38 
 39 
 40 struct seq_oss_timer *snd_seq_oss_timer_new(struct seq_oss_devinfo *dp);
 41 void snd_seq_oss_timer_delete(struct seq_oss_timer *dp);
 42 
 43 int snd_seq_oss_timer_start(struct seq_oss_timer *timer);
 44 int snd_seq_oss_timer_stop(struct seq_oss_timer *timer);
 45 int snd_seq_oss_timer_continue(struct seq_oss_timer *timer);
 46 int snd_seq_oss_timer_tempo(struct seq_oss_timer *timer, int value);
 47 #define snd_seq_oss_timer_reset  snd_seq_oss_timer_start
 48 
 49 int snd_seq_oss_timer_ioctl(struct seq_oss_timer *timer, unsigned int cmd, int __user *arg);
 50 
 51 /*
 52  * get current processed time
 53  */
 54 static inline abstime_t
 55 snd_seq_oss_timer_cur_tick(struct seq_oss_timer *timer)
 56 {
 57         return timer->cur_tick;
 58 }
 59 
 60 
 61 /*
 62  * is realtime event?
 63  */
 64 static inline int
 65 snd_seq_oss_timer_is_realtime(struct seq_oss_timer *timer)
 66 {
 67         return timer->realtime;
 68 }
 69 
 70 #endif
 71 
  This page was automatically generated by the LXR engine.