2006-01-20 12:34:02 -03:00
|
|
|
//
|
2006-04-02 11:44:08 -04:00
|
|
|
// BufferChain.h
|
2006-01-20 12:34:02 -03:00
|
|
|
// CogNew
|
|
|
|
//
|
2006-09-04 14:46:18 -04:00
|
|
|
// Created by Vincent Spader on 1/4/06.
|
|
|
|
// Copyright 2006 Vincent Spader. All rights reserved.
|
2006-01-20 12:34:02 -03:00
|
|
|
//
|
|
|
|
|
|
|
|
#import <Cocoa/Cocoa.h>
|
|
|
|
|
|
|
|
#import "InputNode.h"
|
2007-03-01 22:36:52 -03:00
|
|
|
|
2007-02-24 17:36:27 -03:00
|
|
|
#import "AudioPlayer.h"
|
2006-01-20 12:34:02 -03:00
|
|
|
|
|
|
|
@interface BufferChain : NSObject {
|
|
|
|
InputNode *inputNode;
|
2006-04-12 22:51:22 -04:00
|
|
|
|
2007-02-24 17:36:27 -03:00
|
|
|
NSURL *streamURL;
|
|
|
|
id userInfo;
|
2006-01-20 12:34:02 -03:00
|
|
|
|
|
|
|
id finalNode; //Final buffer in the chain.
|
|
|
|
|
2007-02-24 17:36:27 -03:00
|
|
|
id controller;
|
2006-01-20 12:34:02 -03:00
|
|
|
}
|
|
|
|
|
|
|
|
- (id)initWithController:(id)c;
|
|
|
|
- (void)buildChain;
|
2007-02-24 17:36:27 -03:00
|
|
|
- (BOOL)open:(NSURL *)url withOutputFormat:(AudioStreamBasicDescription)outputFormat;
|
2006-04-02 16:03:12 -04:00
|
|
|
- (void)seek:(double)time;
|
2006-01-20 12:34:02 -03:00
|
|
|
|
|
|
|
- (void)launchThreads;
|
|
|
|
|
|
|
|
- (id)finalNode;
|
|
|
|
|
2007-02-24 17:36:27 -03:00
|
|
|
- (id)userInfo;
|
|
|
|
- (void)setUserInfo:(id)i;
|
|
|
|
|
|
|
|
- (NSURL *)streamURL;
|
2007-03-01 22:36:52 -03:00
|
|
|
- (void)setStreamURL:(NSURL *)url;
|
2007-02-24 17:36:27 -03:00
|
|
|
|
|
|
|
- (void)setShouldContinue:(BOOL)s;
|
|
|
|
|
2007-03-18 20:19:47 -04:00
|
|
|
- (void)initialBufferFilled;
|
|
|
|
|
2007-02-24 17:36:27 -03:00
|
|
|
- (void)endOfInputReached;
|
|
|
|
|
|
|
|
|
2006-01-20 12:34:02 -03:00
|
|
|
@end
|