Source: audiowriterinterface.h


Annotated List
Files
Globals
Hierarchy
Index
// ##########################################################################
// ####                                                                  ####
// ####                      RTP Audio Server Project                    ####
// ####                    ============================                  ####
// ####                                                                  ####
// #### Audio Writer Interface                                           ####
// ####                                                                  ####
// #### Version 1.00  --  February 23, 2001                              ####
// ####                                                                  ####
// #### Copyright (C) 1999  Thomas Dreibholz                             ####
// ####               2000  Universität Bonn, Abt. IV                    ####
// ####               2001  EMail: Dreibholz@bigfoot.com                 ####
// ####                     WWW:   http://www.bigfoot.com/~dreibholz     ####
// ####                                                                  ####
// ##########################################################################


#ifndef AUDIOWRITERINTERFACE_H
#define AUDIOWRITERINTERFACE_H


#include "system.h"
#include "audioqualityinterface.h"


namespace Coral {


/**
  * This class is the interface for an audio writer.
  *
  * @short   Audio Writer Interface
  * @author  Thomas Dreibholz (Dreibholz@bigfoot.com)
  * @version 1.0
  */
class AudioWriterInterface : virtual public AdjustableAudioQualityInterface
{
   public:
   /**
     * Virtual destructor.
     */
   virtual ~AudioWriterInterface();
   
   /**
     * Check, if AudioWriter is ready for writing.
     *
     * @return true, if AudioWriter is ready; false otherwise.
     */
   virtual bool ready() const = 0;

   /**
     * Reset the writer. All data in the output buffer should be removed
     * without writing.
     * Usage example: AudioDevice sends ioctl SNDCTL_DSP_SYNC.
     */
   virtual void sync() = 0;
   
   /**
     * Write data.
     *
     * @param data Data to be written.
     * @return length Length of data in bytes.
     */
   virtual bool write(const void* data, const size_t length) = 0;
};


}


#endif

Generated by: viper@odin on Fri Feb 23 12:41:26 2001, using kdoc 2.0a36.