class AudioCD : public AudioDev

The Qt-interface to a RawCD object.

Inheritance:

AudioCD < AudioDev


Public Methods

AudioCD( void )
void cleanDisplay(void)
void DeviceFirstInit( char *devname )
void LoadOrEject()
void StopPlay()
void TrayControl( bool close_ioctl=false, bool trayless=false )
void updateToCTrkInf(void)

Inherited from AudioDev:

Public Fields

Catalog* ToC

Public Methods

virtual void checkProgramCatalog()
virtual void DecVol()
virtual void IncVol()
virtual void newItemLabel(char *)
virtual void newItemNumber(int)
virtual void newPlayMode(int)
virtual void newPlayState(int)
virtual void newProgArtist(char *)
virtual void newProgLabel(char *)
virtual void newProgram(void)
virtual void newTime(int)
virtual void newTimeMode(int)
virtual void newVolume(float)
virtual void Next()
virtual void Prev()
virtual void StartPlayOrPause()
virtual void StartScanFwd()
virtual void StartScanRev()
virtual void StopScan()

Documentation

The AudioCD class is the interface to a RawCD object. It is toolkit-dependent and also provides an interface to the AudioPanel object via inheritance of the AudioDev class.

Repeating a single item, an entire playlist, or shuffling a playlist are all intrinsic parts of this class. All of these functions operate on the current playlist, as opposed to the entire CD.

All public methods, slots and signals are abstract virtual members of the AudioDev class. They've been implemented as described in the documentation of AudioDev, but with support for programs, shuffling, and repeating play. I've only documented those with greater functionality than what's described in the documentation of AudioDev.

The private members [which includes the RawCD object] and methods are not documented, as they exist solely to support the implementations of all of the public methods, slots, and signals. One of the neat things about the private members are slots that receive signals from Qt-timers. Using the timers to keep track of the elapsed time, I can support even the most buggy of CDROM drives!

  
  ----------------------------------------------------------
  ----------------------------------------------------------
  

AudioCD( void )
Class Constructor

void DeviceFirstInit( char *devname )
[virtual]

Reimplemented from AudioDev. The AudioCD object remains empty until this is called. This implementation could be called multiple times.

void TrayControl( bool close_ioctl=false, bool trayless=false )
Wrapper for the RawCD version.

void cleanDisplay(void)
[virtual]

Reimplemented from AudioDev. Emits signals to update the title, artist, and current item label [newProgLabel, newProgArtist, newItemLabel. Does not emit newTime or newItemNumber, however.

void updateToCTrkInf(void)
[virtual]

Reimplemented from AudioDev. Scans the CD player to update the track list in the ToC. This is here so that programs that read a catalog entry from a database can signal the device to do this sort of update.

void StopPlay()
Public Slot [virtual]

Reimplemented from AudioDev. Stops play and resets the CDROM device [via RawCD]. The first call also unshuffles the playlist, but does not erase any special program. A second call after the first resets the playlist, erasing any custom program.

void LoadOrEject()
Public Slot [virtual]

Reimplemented from AudioDev to eject a CD or retract the tray.


This class has no child classes.
See Also:
RawCD, Catalog, AudioDev

alphabetic index hierarchy of classes


Copyright 1997 by John Weiss [John.Weiss@colorado.edu] "generated by doc++"?! More like mangled ...

generated by doc++