package org.cmc.music.metadata;
import java.util.List;
import java.util.Map;
import java.util.Vector;
public interface IMusicMetadata
{
public String getMetadataName();
public boolean hasBasicInfo();
public Map getRawValues();
public void mergeValuesIfMissing(IMusicMetadata other);
// accessor methods
public String getSongTitle();
public String getArtist();
public String getAlbum();
public Number getYear();
public Number getTrackNumberNumeric();
public String getTrackNumberDescription();
public String getTrackNumberFormatted();
public Number getTrackCount();
public String getGenreName();
public Number getGenreID();
public Number getDurationSeconds();
public String getComposer();
// public String getProducerArtist();
// public String getComposer2();
public void clearSongTitle();
public void clearArtist();
public void clearAlbum();
public void clearYear();
public void clearTrackNumber();
public void clearTrackCount();
public void clearGenre();
public void clearDurationSeconds();
public void clearComposer();
// public void clearProducerArtist();
// public void clearComposer2();
public void clearFeaturingList();
public void setFeaturingList(Vector v);
public Vector getFeaturingList();
public void setSongTitle(String value);
public void setArtist(String value);
public void setAlbum(String value);
public void setYear(Number value);
public List getComments();
public void clearComments();
public void addComment(String value);
public void setComments(List values);
public void setTrackCount(Number value);
public void setTrackNumberNumeric(Number value);
public void setTrackNumberDescription(String description);
public void setTrackNumber(Number value, String description);
public void setGenreName(String value);
public void setGenreID(Number value);
public void setGenre(String name, Number id);
public void setDurationSeconds(Number value);
public void setComposer(String value);
// public void setProducerArtist(String value);
// public void setComposer2(String value);
public String getProducer();
public void setProducer(String value);
public void clearProducer();
public void clearPictures();
public void setPictures(Vector v);
public Vector getPictures();
public void addPicture(ImageData image);
public void setIsSoundtrack(Boolean value);
public Boolean getIsSoundtrack();
public void clearIsSoundtrack();
public void setIsAcapella(Boolean value);
public Boolean getIsAcapella();
public void clearIsAcapella();
public void setIsCompilation(Boolean value);
public Boolean getIsCompilation();
public void clearIsCompilation();
public void setDiscNumber(Number value);
public Number getDiscNumber();
public void clearDiscNumber();
public void setEngineer(String value);
public String getEngineer();
public void clearEngineer();
public void setPublisher(String value);
public String getPublisher();
public void clearPublisher();
public void setConductor(String value);
public String getConductor();
public void clearConductor();
public void setBand(String value);
public String getBand();
public void clearBand();
public void setMixArtist(String value);
public String getMixArtist();
public void clearMixArtist();
public void setLyricist(String value);
public String getLyricist();
public void clearLyricist();
public void setEncodedBy(String value);
public String getEncodedBy();
public void clearEncodedBy();
public void setEncoderSettings(String value);
public String getEncoderSettings();
public void clearEncoderSettings();
public void setMediaType(String value);
public String getMediaType();
public void clearMediaType();
public void setFileType(String value);
public String getFileType();
public void clearFileType();
public Number getPartOfSetIndex();
public void clearPartOfSetIndex();
public void setPartOfSetIndex(Number s);
public Number getPartOfSetCount();
public void clearPartOfSetCount();
public void setPartOfSetCount(Number s);
public void clearUnknownUserTextValues();
public List getUnknownUserTextValues();
public void addUnknownUserTextValue(UnknownUserTextValue value);
public void setUnknownUserTextValues(List values);
}