X-Git-Url: http://git.ithinksw.org/MenuTunes.git/blobdiff_plain/6703bfe7928b4a1e570cbf8617ef79c3185accad..74d6135e4db4cf9a70994d5bc2062be30311d0f3:/ITMTRemote.h diff --git a/ITMTRemote.h b/ITMTRemote.h index be50925..693d908 100755 --- a/ITMTRemote.h +++ b/ITMTRemote.h @@ -28,6 +28,14 @@ #import +typedef enum { + stopped = -1, + paused, + playing, + rewinding, + forwarding +} ITMTRemotePlayerState; + /*! @protocol ITMTRemote * @abstract Declares what a MenuTunes Remote must be able to do. * @discussion A MenuTunes Remote must be able to return and change state information. @@ -48,7 +56,7 @@ + (id)remote; /*! @method title: - * @abstract Returns an autoreleased instance of the remote. + * @abstract Returns the title of the plugin, which should be player name. * @result An NSString containing the title. */ - (NSString *)title; @@ -77,7 +85,19 @@ */ - (BOOL)halt; -- (int)numberOfPlaylists; +/*! @method isAppRunning: + * @abstract Returns controlled application's running status (is or isn't running). + * @result BOOL of the controlled application's running status. + */ +- (BOOL)isAppRunning; + +/*! @method playerState: + * @abstract Returns controlled application's playing state. + * @result ITMTRemotePlayerState of the controlled application's playing state. + */ +- (ITMTRemotePlayerState)playerState; + +- (NSArray *)playlists; - (int)numberOfSongsInPlaylistAtIndex:(int)index; - (NSString *)classOfPlaylistAtIndex:(int)index; - (int)currentPlaylistIndex; @@ -92,12 +112,21 @@ - (NSString *)currentSongLength; - (NSString *)currentSongRemaining; +- (float)currentSongRating; +- (BOOL)setCurrentSongRating:(float)rating; + - (NSArray *)eqPresets; +- (int)currentEQPresetIndex; + +- (float)volume; +- (BOOL)setVolume:(float)volume; - (BOOL)play; - (BOOL)pause; - (BOOL)goToNextSong; - (BOOL)goToPreviousSong; +- (BOOL)fastForward; +- (BOOL)rewind; - (BOOL)switchToPlaylistAtIndex:(int)index; - (BOOL)switchToSongAtIndex:(int)index;