27 lines
526 B
Go
27 lines
526 B
Go
|
/*
|
||
|
* MumbleDJ
|
||
|
* By Matthieu Grieger
|
||
|
* interfaces/track.go
|
||
|
* Copyright (c) 2016 Matthieu Grieger (MIT License)
|
||
|
*/
|
||
|
|
||
|
package interfaces
|
||
|
|
||
|
import "time"
|
||
|
|
||
|
// Track is an interface of methods that must be implemented by tracks.
|
||
|
type Track interface {
|
||
|
GetID() string
|
||
|
GetURL() string
|
||
|
GetTitle() string
|
||
|
GetAuthor() string
|
||
|
GetAuthorURL() string
|
||
|
GetSubmitter() string
|
||
|
GetService() string
|
||
|
GetFilename() string
|
||
|
GetThumbnailURL() string
|
||
|
GetDuration() time.Duration
|
||
|
GetPlaybackOffset() time.Duration
|
||
|
GetPlaylist() Playlist
|
||
|
}
|