00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #include "nsISupports.idl"
00028
00029 interface sbIMediaItem;
00030 interface sbIPropertyArray;
00031
00035 [scriptable, uuid(3e2733de-9e30-4bde-99f0-274bacdd0b20)]
00036 interface sbIPlaybackHistoryEntry : nsISupports
00037 {
00042 readonly attribute long long entryId;
00043
00047 readonly attribute sbIMediaItem item;
00048
00053 readonly attribute long long timestamp;
00054
00059 readonly attribute long long duration;
00060
00065 readonly attribute sbIPropertyArray annotations;
00066
00073 AString getAnnotation(in AString aAnnotationId);
00074
00081 boolean hasAnnotation(in AString aAnnotationId);
00082
00088 void setAnnotation(in AString aAnnotationId,
00089 in AString aAnnotationValue);
00090
00095 void removeAnnotation(in AString aAnnotationId);
00096
00105 void init(in sbIMediaItem aItem,
00106 in long long aTimestamp,
00107 in long long aDuration,
00108 in sbIPropertyArray aAnnotations);
00109
00115 [notxpcom] void setEntryId(in long long aEntryId);
00116 };
00117
00118 %{C++
00119
00120 #define SB_PLAYBACKHISTORYENTRY_DESCRIPTION \
00121 "Songbird Playback History Entry"
00122 #define SB_PLAYBACKHISTORYENTRY_CONTRACTID \
00123 "@songbirdnest.com/Songbird/PlaybackHistoryEntry;1"
00124 #define SB_PLAYBACKHISTORYENTRY_CLASSNAME \
00125 "sbPlaybackHistoryEntry"
00126 #define SB_PLAYBACKHISTORYENTRY_CID \
00127 { \
00128 0x64abdd62, \
00129 0x3481, \
00130 0x4ce9, \
00131 { 0x89, 0xc6, 0xe0, 0x23, 0x98, 0xa4, 0xaa, 0x5c } \
00132 }
00133
00134 %}