summaryrefslogtreecommitdiffstats
path: root/macosx/HBAudio.h
diff options
context:
space:
mode:
authorritsuka <[email protected]>2015-01-13 08:08:04 +0000
committerritsuka <[email protected]>2015-01-13 08:08:04 +0000
commit677231f07d765e79afdc76e7741bb9e03bde1142 (patch)
treeb98775bb09649710c9b80b6370c8d261ce778cf9 /macosx/HBAudio.h
parent40edf3c9bce9f91fa3b5d8f422ad5df1e8ad3eb6 (diff)
MacGui: Move the audio/subtitles selection logic out of the view controllers. Now it's possible to create a HBJob and apply a preset to without the UI classes help.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6741 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'macosx/HBAudio.h')
-rw-r--r--macosx/HBAudio.h43
1 files changed, 43 insertions, 0 deletions
diff --git a/macosx/HBAudio.h b/macosx/HBAudio.h
new file mode 100644
index 000000000..07ed536fc
--- /dev/null
+++ b/macosx/HBAudio.h
@@ -0,0 +1,43 @@
+/* HBAudio.h $
+
+ This file is part of the HandBrake source code.
+ Homepage: <http://handbrake.fr/>.
+ It may be used under the terms of the GNU General Public License. */
+
+#import <Foundation/Foundation.h>
+#import "HBPresetCoding.h"
+
+@class HBTitle;
+@class HBAudioTrack;
+@class HBAudioDefaults;
+
+@interface HBAudio : NSObject <NSCoding, NSCopying, HBPresetCoding>
+
+- (instancetype)initWithTitle:(HBTitle *)title;
+
+@property (nonatomic, readonly) NSDictionary *noneTrack;
+@property (nonatomic, readonly) NSArray *masterTrackArray; // the master list of audio tracks from the title
+@property (nonatomic, readonly) NSMutableArray *tracks;
+
+@property (nonatomic, readwrite, retain) HBAudioDefaults *defaults;
+
+@property (nonatomic, readwrite) int container; // initially is the default HB_MUX_MP4
+
+- (void)addAllTracks;
+- (void)removeAll;
+- (void)reloadDefaults;
+
+- (BOOL)anyCodecMatches:(int)codec;
+- (void)settingTrackToNone:(HBAudioTrack *)newNoneTrack;
+- (void)switchingTrackFromNone:(HBAudioTrack *)noLongerNoneTrack;
+
+@end
+
+@interface HBAudio (KVC)
+
+- (NSUInteger)countOfTracks;
+- (HBAudioTrack *)objectInTracksAtIndex:(NSUInteger)index;
+- (void)insertObject:(HBAudioTrack *)track inTracksAtIndex:(NSUInteger)index;
+- (void)removeObjectFromTracksAtIndex:(NSUInteger)index;
+
+@end