2005-06-02 18:16:43 +00:00
|
|
|
//
|
|
|
|
// PlaylistEntry.h
|
|
|
|
// Cog
|
|
|
|
//
|
|
|
|
// Created by Vincent Spader on 3/14/05.
|
2005-07-02 21:02:06 +00:00
|
|
|
// Copyright 2005 Vincent Spader All rights reserved.
|
2005-06-02 18:16:43 +00:00
|
|
|
//
|
|
|
|
|
|
|
|
#import <Cocoa/Cocoa.h>
|
|
|
|
|
2022-02-07 05:49:27 +00:00
|
|
|
@interface PlaylistEntry : NSObject <NSCopying> {
|
2021-04-30 01:16:24 +00:00
|
|
|
NSInteger index;
|
|
|
|
NSInteger shuffleIndex;
|
2022-02-07 05:49:27 +00:00
|
|
|
NSInteger dbIndex;
|
|
|
|
NSInteger entryId;
|
2022-02-11 06:37:37 +00:00
|
|
|
NSInteger artId;
|
2022-02-07 05:49:27 +00:00
|
|
|
|
2008-03-01 03:29:21 +00:00
|
|
|
BOOL current;
|
|
|
|
BOOL removed;
|
2022-02-07 05:49:27 +00:00
|
|
|
|
2008-03-01 03:29:21 +00:00
|
|
|
BOOL stopAfter;
|
2022-02-07 05:49:27 +00:00
|
|
|
|
2008-03-01 03:29:21 +00:00
|
|
|
BOOL queued;
|
2021-04-30 01:16:24 +00:00
|
|
|
NSInteger queuePosition;
|
2022-02-07 05:49:27 +00:00
|
|
|
|
2008-03-01 03:29:21 +00:00
|
|
|
BOOL error;
|
|
|
|
NSString *errorMessage;
|
2022-02-07 05:49:27 +00:00
|
|
|
|
2008-02-20 00:44:40 +00:00
|
|
|
NSURL *URL;
|
2022-02-11 05:35:13 +00:00
|
|
|
NSURL *trashURL;
|
2022-02-07 05:49:27 +00:00
|
|
|
|
2005-06-02 18:16:43 +00:00
|
|
|
NSString *artist;
|
2022-02-07 05:49:27 +00:00
|
|
|
NSString *albumartist;
|
2005-06-02 18:16:43 +00:00
|
|
|
NSString *album;
|
|
|
|
NSString *title;
|
|
|
|
NSString *genre;
|
2008-03-04 00:43:47 +00:00
|
|
|
NSNumber *year;
|
2008-02-29 20:30:37 +00:00
|
|
|
NSNumber *track;
|
2022-02-07 05:49:27 +00:00
|
|
|
NSNumber *disc;
|
|
|
|
|
|
|
|
NSString *cuesheet;
|
|
|
|
|
|
|
|
NSData *albumArtInternal;
|
|
|
|
|
|
|
|
float replayGainAlbumGain;
|
|
|
|
float replayGainAlbumPeak;
|
|
|
|
float replayGainTrackGain;
|
|
|
|
float replayGainTrackPeak;
|
|
|
|
float volume;
|
|
|
|
|
|
|
|
double currentPosition;
|
|
|
|
|
2008-02-23 19:46:23 +00:00
|
|
|
long long totalFrames;
|
|
|
|
int bitrate;
|
|
|
|
int channels;
|
2022-02-07 09:11:30 +00:00
|
|
|
uint32_t channelConfig;
|
2008-02-23 19:46:23 +00:00
|
|
|
int bitsPerSample;
|
2022-02-07 05:49:27 +00:00
|
|
|
BOOL floatingPoint;
|
|
|
|
BOOL Unsigned;
|
2008-02-23 19:46:23 +00:00
|
|
|
float sampleRate;
|
2022-02-07 05:49:27 +00:00
|
|
|
|
|
|
|
NSString *codec;
|
|
|
|
|
2008-03-01 03:29:21 +00:00
|
|
|
NSString *endian;
|
2022-02-07 05:49:27 +00:00
|
|
|
|
|
|
|
NSString *encoding;
|
|
|
|
|
2008-02-23 19:46:23 +00:00
|
|
|
BOOL seekable;
|
2022-02-07 05:49:27 +00:00
|
|
|
|
2009-03-06 04:46:42 +00:00
|
|
|
BOOL metadataLoaded;
|
2022-02-10 05:04:17 +00:00
|
|
|
|
|
|
|
BOOL deleted;
|
2005-06-02 18:16:43 +00:00
|
|
|
}
|
|
|
|
|
2008-02-29 21:54:09 +00:00
|
|
|
+ (NSSet *)keyPathsForValuesAffectingDisplay;
|
|
|
|
+ (NSSet *)keyPathsForValuesAffectingLength;
|
|
|
|
+ (NSSet *)keyPathsForValuesAffectingPath;
|
|
|
|
+ (NSSet *)keyPathsForValuesAffectingFilename;
|
2008-03-01 03:29:21 +00:00
|
|
|
+ (NSSet *)keyPathsForValuesAffectingStatus;
|
|
|
|
+ (NSSet *)keyPathsForValuesAffectingStatusMessage;
|
2013-10-04 11:16:09 +00:00
|
|
|
+ (NSSet *)keyPathsForValuesAffectingSpam;
|
2013-10-09 20:53:13 +00:00
|
|
|
+ (NSSet *)keyPathsForValuesAffectingAlbumArt;
|
2022-01-22 05:49:17 +00:00
|
|
|
+ (NSSet *)keyPathsForValuesAffectingTrackText;
|
|
|
|
+ (NSSet *)keyPathsForValuesAffectingLengthText;
|
|
|
|
+ (NSSet *)keyPathsForValuesAffectingYearText;
|
2022-01-22 07:19:32 +00:00
|
|
|
+ (NSSet *)keyPathsForValuesAffectingCuesheetPresent;
|
2022-01-22 07:49:07 +00:00
|
|
|
+ (NSSet *)keyPathsForValuesAffectingGainCorrection;
|
2008-02-29 21:54:09 +00:00
|
|
|
|
2008-02-20 00:44:40 +00:00
|
|
|
@property(readonly) NSString *display;
|
2008-02-29 20:09:59 +00:00
|
|
|
@property(retain, readonly) NSNumber *length;
|
2008-02-20 00:44:40 +00:00
|
|
|
@property(readonly) NSString *path;
|
|
|
|
@property(readonly) NSString *filename;
|
2006-05-12 14:53:13 +00:00
|
|
|
|
2013-10-04 11:16:09 +00:00
|
|
|
@property(readonly) NSString *spam;
|
|
|
|
|
2014-12-04 06:13:27 +00:00
|
|
|
@property(readonly) NSString *positionText;
|
|
|
|
|
|
|
|
@property(readonly) NSString *lengthText;
|
|
|
|
|
2022-01-22 05:49:17 +00:00
|
|
|
@property(readonly) NSString *yearText;
|
|
|
|
|
2022-01-20 22:54:42 +00:00
|
|
|
@property(readonly) NSString *rawTitle;
|
|
|
|
|
2022-01-22 05:49:17 +00:00
|
|
|
@property(readonly) NSString *trackText;
|
|
|
|
|
2021-04-30 01:16:24 +00:00
|
|
|
@property NSInteger index;
|
|
|
|
@property NSInteger shuffleIndex;
|
2021-12-24 09:01:21 +00:00
|
|
|
@property NSInteger dbIndex;
|
2022-01-15 06:42:57 +00:00
|
|
|
@property NSInteger entryId;
|
2022-02-11 06:37:37 +00:00
|
|
|
@property NSInteger artId;
|
2008-03-01 03:29:21 +00:00
|
|
|
|
|
|
|
@property(readonly) NSString *status;
|
|
|
|
@property(readonly) NSString *statusMessage;
|
|
|
|
|
|
|
|
@property BOOL current;
|
|
|
|
@property BOOL removed;
|
|
|
|
|
|
|
|
@property BOOL stopAfter;
|
|
|
|
|
|
|
|
@property BOOL queued;
|
2021-04-30 01:16:24 +00:00
|
|
|
@property NSInteger queuePosition;
|
2008-03-01 03:29:21 +00:00
|
|
|
|
|
|
|
@property BOOL error;
|
|
|
|
@property(retain) NSString *errorMessage;
|
|
|
|
|
2008-02-20 00:44:40 +00:00
|
|
|
@property(retain) NSURL *URL;
|
2022-02-11 05:35:13 +00:00
|
|
|
@property(retain) NSURL *trashURL;
|
2005-06-02 18:16:43 +00:00
|
|
|
|
2008-02-20 00:44:40 +00:00
|
|
|
@property(retain) NSString *artist;
|
2021-10-02 02:18:42 +00:00
|
|
|
@property(retain) NSString *albumartist;
|
2008-02-20 00:44:40 +00:00
|
|
|
@property(retain) NSString *album;
|
2013-09-30 00:27:55 +00:00
|
|
|
@property(nonatomic, retain) NSString *title;
|
2008-02-20 00:44:40 +00:00
|
|
|
@property(retain) NSString *genre;
|
2008-03-04 00:43:47 +00:00
|
|
|
@property(retain) NSNumber *year;
|
2008-02-29 20:30:37 +00:00
|
|
|
@property(retain) NSNumber *track;
|
2022-01-22 05:49:17 +00:00
|
|
|
@property(retain) NSNumber *disc;
|
2013-10-09 20:53:13 +00:00
|
|
|
|
2022-01-15 00:46:35 +00:00
|
|
|
@property(retain) NSString *cuesheet;
|
|
|
|
|
2022-01-22 07:19:32 +00:00
|
|
|
@property(readonly) NSString *cuesheetPresent;
|
|
|
|
|
2013-10-09 20:53:13 +00:00
|
|
|
@property(retain, readonly) NSImage *albumArt;
|
|
|
|
@property(retain) NSData *albumArtInternal;
|
2007-11-01 01:53:52 +00:00
|
|
|
|
2008-02-23 19:46:23 +00:00
|
|
|
@property long long totalFrames;
|
|
|
|
@property int bitrate;
|
|
|
|
@property int channels;
|
2022-02-07 09:11:30 +00:00
|
|
|
@property uint32_t channelConfig;
|
2008-02-23 19:46:23 +00:00
|
|
|
@property int bitsPerSample;
|
2013-10-05 21:15:09 +00:00
|
|
|
@property BOOL floatingPoint;
|
2013-10-07 18:26:23 +00:00
|
|
|
@property BOOL Unsigned;
|
2008-02-23 19:46:23 +00:00
|
|
|
@property float sampleRate;
|
2007-05-27 15:11:30 +00:00
|
|
|
|
2021-10-02 02:18:42 +00:00
|
|
|
@property(retain) NSString *codec;
|
|
|
|
|
2013-10-02 06:00:16 +00:00
|
|
|
@property float replayGainAlbumGain;
|
|
|
|
@property float replayGainAlbumPeak;
|
|
|
|
@property float replayGainTrackGain;
|
|
|
|
@property float replayGainTrackPeak;
|
|
|
|
@property float volume;
|
|
|
|
|
2022-01-22 07:49:07 +00:00
|
|
|
@property(readonly) NSString *gainCorrection;
|
|
|
|
|
2022-01-23 04:44:06 +00:00
|
|
|
@property(readonly) NSString *gainInfo;
|
|
|
|
|
2013-10-04 11:16:09 +00:00
|
|
|
@property double currentPosition;
|
|
|
|
|
2008-03-01 03:29:21 +00:00
|
|
|
@property(retain) NSString *endian;
|
|
|
|
|
2022-01-22 06:38:54 +00:00
|
|
|
@property(retain) NSString *encoding;
|
|
|
|
|
2008-02-23 19:46:23 +00:00
|
|
|
@property BOOL seekable;
|
2005-06-02 18:16:43 +00:00
|
|
|
|
2009-03-06 04:46:42 +00:00
|
|
|
@property BOOL metadataLoaded;
|
|
|
|
|
2022-02-10 05:04:17 +00:00
|
|
|
@property BOOL deleted;
|
|
|
|
|
2009-03-06 04:46:42 +00:00
|
|
|
- (void)setMetadata:(NSDictionary *)metadata;
|
|
|
|
|
2005-06-02 18:16:43 +00:00
|
|
|
@end
|