AMutableArray.h revision 324c4644fee44b9898524c09511bd33c3f12e2df
1324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver//
2324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver//  AMutableArray.h
3324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver//  a_ST4
4324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver//
5324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver//  Created by Alan Condit on 3/12/11.
6324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver//  Copyright 2011 Alan's MachineWorks. All rights reserved.
7324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver//
8324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
9324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver#import <Cocoa/Cocoa.h>
10324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver#import "ArrayIterator.h"
11324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
12324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver@class ArrayIterator;
13324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
14324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver@interface AMutableArray : NSMutableArray {
15324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    NSInteger BuffSize;
16324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    NSInteger count;
17324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    __strong NSMutableData *buffer;
18324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    __strong id *ptrBuffer;
19324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver}
20324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
21324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver+ (id) newArray;
22324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver+ (id) arrayWithCapacity:(NSInteger)size;
23324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
24324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver- (id) init;
25324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver- (id) initWithCapacity:(NSInteger)size;
26324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver- (id) copyWithZone:(NSZone *)aZone;
27324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
28324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver- (void) addObject:(id)anObject;
29324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver- (void) addObjectsFromArray:(NSArray *)anArray;
30324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver- (id) objectAtIndex:(NSInteger)anIdx;
31324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver- (void) insertObject:(id)anObject atIndex:(NSInteger)anIdx;
32324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver- (void) removeAllObjects;
33324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver- (void) removeLastObject;
34324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver- (void) removeObjectAtIndex:(NSInteger)idx;
35324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver- (void) replaceObjectAtIndex:(NSInteger)idx withObject:(id)obj;
36324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver- (NSInteger) count;
37324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver- (void)setCount:(NSInteger)cnt;
38324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver//- (NSUInteger)countByEnumeratingWithState:(NSFastEnumerationState *)state objects:(id *)stackbuf count:(NSUInteger)len;
39324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver- (NSArray *) allObjects;
40324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver- (ArrayIterator *) objectEnumerator;
41324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver- (void) ensureCapacity:(NSInteger) index;
42324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver- (NSString *) description;
43324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver- (NSString *) toString;
44324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
45324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver@property (assign) NSInteger BuffSize;
46324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver@property (assign, getter=count, setter=setCount:) NSInteger count;
47324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver@property (retain) NSMutableData *buffer;
48324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver@property (assign) id *ptrBuffer;
49324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
50324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver@end
51