-/*! @method remote
- * @abstract Returns an autoreleased instance of the remote.
- * @discussion Should be very quick and compact.
- * EXAMPLE:
- * + (id)remote
- * {
- * return [[[MyRemote alloc] init] autorelease];
- * }
- * @result The instance.
+/*!
+ * @enum ITMTRemotePlayerRepeatMode
+ * @abstract Possible repeat modes for the remote's player.
+ * @discussion Used in functions that report or set the remote's player's repeat mode.
+ * @constant ITMTRemotePlayerRepeatOff The player plays all of the songs in a playlist through to the end, and then stops.
+ * @constant ITMTRemotePlayerRepeatAll The player plays all of the songs in a playlist through to the end, and then starts over again from the beginning.
+ * @constant ITMTRemotePlayerRepeatOne The player loops playing the selected song.
+ */
+typedef enum {
+ ITMTRemotePlayerRepeatOff = -1,
+ ITMTRemotePlayerRepeatAll,
+ ITMTRemotePlayerRepeatOne
+} ITMTRemotePlayerRepeatMode;
+
+/*!
+ * @protocol ITMTRemote
+ * @discussion The Objective-C protocol which all MenuTunes remotes must implement.
+ */
+@protocol ITMTRemote
+
+/*!
+ * @method remote
+ * @abstract Returns an autoreleased instance of the remote.
+ * @discussion Should be very quick and compact.
+ *
+ * EXAMPLE:<br>
+ * + (id)remote<br>
+ * {<br>
+ * return [[[MyRemote alloc] init] autorelease];<br>
+ * }
+ *
+ * @result An instance of the remote.