//=========================================================
//  MusE
//  Linux Music Editor
//  $Id: timerdev.h,v 1.1.2.1 2004/11/26 21:15:31 spamatica Exp $
//
//  Plenty of code borrowed from timer.c example in 
//  alsalib 1.0.7
//
//  (C) Copyright 2004 Robert Jonsson (rj@spamatica.se)
//=========================================================

#ifndef __TIMERDEV_H__
#define __TIMERDEV_H__

#include "alsa/asoundlib.h"

#define TIMER_DEBUG 0

//---------------------------------------------------------
//   AlsaTimer
//---------------------------------------------------------

class Timer {
    
     public:
       Timer() {};
       virtual ~Timer() {};
       
       virtual int initTimer() = 0;
       virtual bool setTimerResolution(int resolution) = 0;
       virtual int  getTimerResoltution() = 0;
       virtual bool setTimerTicks(int tick) = 0;
       
       virtual bool startTimer() = 0;
       virtual bool stopTimer() = 0;
       virtual unsigned long getTimerTicks() = 0;
        
};

#endif //__ALSATIMER_H__
