//====START_GENERATED_PROLOG======================================
//
//
//   COMPONENT_NAME: odother
//
//   CLASSES: none
//
//   ORIGINS: 27
//
//
//   (C) COPYRIGHT International Business Machines Corp. 1995,1996
//   All Rights Reserved
//   Licensed Materials - Property of IBM
//   US Government Users Restricted Rights - Use, duplication or
//   disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
//
//   IBM DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
//   ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
//   PURPOSE. IN NO EVENT SHALL IBM BE LIABLE FOR ANY SPECIAL, INDIRECT OR
//   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
//   USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
//   OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE
//   OR PERFORMANCE OF THIS SOFTWARE.
//
//====END_GENERATED_PROLOG========================================
//
// @(#) 1.1 nt/src/samples/cdplayer/cdalbum.h, odcdplayerpart, od96nt, odnt9712d 8/22/96 15:35:36 [ 3/21/97 17:32:46 ]

/*-------------------------------------------------------------------+
|                             CDAlbum.h                              |
| ================================================================== |
|                                                                    |
| Description:  CD Album class definition.  Represents a muscial CD. |
|                                                                    |
|               Data members:                                        |
|                                                                    |
|                   o  fKey    - Unique number for this album        |
|                   o  fArtist - Album artist/group                  |
|                   o  fTitle  - Album title                         |
|                   o  fSongs  - Songs on the album                  |
|                                                                    |
| Author:       David Kuettel, Summer 1996                           |
|                                                                    |
+-------------------------------------------------------------------*/
#ifndef IBMSample_CDALBUM
#define IBMSample_CDALBUM

#ifndef IBMSample_CDSONG
#include "CDSong.h"
#endif

#ifndef IBMSample_LIST
#include "List.h"
#endif

class CDControl;

class CDAlbum {
public:
	CDAlbum (const char* key, const char* artist, const char* title);
	virtual ~CDAlbum ();

	const char* GetKey () const;
	const char* GetArtist() const;
	const char* GetTitle() const;
	List<CDSong*>* GetSongs ();

	void SetKey (const char* key);
	void SetArtist (const char* artist);
	void SetTitle (const char* title);
	void AddSong (CDSong* song);

private:
	char*        	fKey;		// Album key
	char*		fArtist;	// Album artist/group
	char*		fTitle;		// Album title
 	List<CDSong*>	fSongs; 	// Songs on the album

	friend CDControl;
} ;

#endif /* IBMSample_CDALBUM */
