/* ------------------------------------------------------------------ * Copyright (C) 1998-2009 PacketVideo * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. * See the License for the specific language governing permissions * and limitations under the License. * ------------------------------------------------------------------- */ #ifndef ITUNESILSTMETADATAATOM_H_INCLUDED #define ITUNESILSTMETADATAATOM_H_INCLUDED #include "atom.h" #include "pvmi_kvp.h" class ITunesILstMetaDataAtom { public: ITunesILstMetaDataAtom(MP4_FF_FILE *fp, uint32 size, uint32 type); virtual ~ITunesILstMetaDataAtom(); OSCL_wHeapString getName() const { return _name; } OSCL_wHeapString getArtist() const { return _artist; } OSCL_wHeapString getAlbum() const { return _album; } // Gnre ** Starts ** uint16 getGnreID() const { return _gnreID; } OSCL_wHeapString getGnreString() const { return _gnreString; } //This function will tell the type of Genre-- TRUE- If it is Integer, FALSE- if it is String bool getGnreVesion() const { return _gnreVersion; } // Gnre ** Ends ** // Returns the 4-byte YEAR when the song was recorded OSCL_wHeapString getDay() const { return _day; } OSCL_wHeapString getTool() const { return _tool; } OSCL_wHeapString getWriter() { return _writer; } OSCL_wHeapString getGroup() { return _group; } OSCL_wHeapString getComment() { return _comment; } uint16 getThisTrackNo() { return _thisTrackNo; } uint16 getTotalTracks() { return _totalTracks; } bool IsCompilationPart() { return _compilationPart; } uint16 getBeatsPerMinute() { return _beatsPerMin; } PvmfApicStruct getPNGImageData() { return _PNGimageData; } uint16 getThisDiskNo() { return _thisDiskNo; } uint16 getTotalDisks() { return _totalDisks; } OSCL_wHeapString getLyrics() { return _lyrics; } OSCL_wHeapString getNormalizationData() { return _normlizationData; } OSCL_wHeapString getCDIdentifier() { return _cdIdentifier; } private: // Title of Song OSCL_wHeapString _name; // Artist/Performer of the Song OSCL_wHeapString _artist; // Album of Song OSCL_wHeapString _album; // Genre OSCL_wHeapString _gnreString; // Customized String of Genre uint16 _gnreID; // Genre ID bool _gnreVersion; // Whether gnre is String or ID Number // 4 byte String representing Year, when song was recorded. OSCL_wHeapString _day; // Tool/Encoder used for creation of this file. OSCL_wHeapString _tool; // Writer of the Song OSCL_wHeapString _writer; // Group data. OSCL_wHeapString _group; // Comment OSCL_wHeapString _comment; // Track Number uint16 _thisTrackNo; uint16 _totalTracks; // Whether this file is the Part of Compilation or not. bool _compilationPart; // Number of Beats per Minute uint16 _beatsPerMin; // Album Art Data- PNG Image data PvmfApicStruct _PNGimageData; // Disk Number uint16 _thisDiskNo; uint16 _totalDisks; // Lyrics of the Song OSCL_wHeapString _lyrics; // Free Form Data/ Normalization Data. OSCL_wHeapString _normlizationData; //CD Identifier OSCL_wHeapString _cdIdentifier; }; #endif //ITUNESILSTMETADATAATOM_H_INCLUDED