2 #import <Cocoa/Cocoa.h>
3 #import <CoreMIDI/CoreMIDI.h>
4 #import <VVBasics/VVBasics.h>
11 @protocol VVMIDIDelegateProtocol
12 - (void) setupChanged;
13 - (void) receivedMIDI:(NSArray *)a fromNode:(VVMIDINode *)n;
19 @interface VVMIDIManager : NSObject <VVMIDIDelegateProtocol> {
23 VVMIDINode *virtualSource;
24 VVMIDINode *virtualDest;
31 - (NSMutableDictionary *) createSnapshot;
32 - (void) loadSnapshot:(NSDictionary *)d;
34 - (void) loadMIDIInputSources;
35 - (void) loadMIDIOutputDestinations;
36 - (void) createVirtualNodes;
38 - (void) setupChanged;
39 - (void) receivedMIDI:(NSArray *)a;
40 - (void) receivedMIDI:(NSArray *)a fromNode:(VVMIDINode *)n;
42 - (void) sendMsg:(VVMIDIMessage *)m;
43 - (void) sendMsgs:(NSArray *)a;
45 - (VVMIDINode *) findDestNodeNamed:(NSString *)n;
46 - (VVMIDINode *) findDestNodeWithFullName:(NSString *)n;
47 - (VVMIDINode *) findDestNodeWithModelName:(NSString *)n;
48 - (VVMIDINode *) findDestNodeWithDeviceName:(NSString *)n;
49 - (VVMIDINode *) findSourceNodeNamed:(NSString *)n;
50 - (VVMIDINode *) findSourceNodeWithFullName:(NSString *)n;
51 - (VVMIDINode *) findSourceNodeWithModelName:(NSString *)n;
52 - (VVMIDINode *) findSourceNodeWithDeviceName:(NSString *)n;
55 - (NSArray *) destNodeNameArray;
56 - (NSArray *) destNodeFullNameArray;
57 - (NSArray *) sourceNodeNameArray;
58 - (NSArray *) sourceNodeFullNameArray;
59 - (NSArray *) deviceNameArray;
62 - (id) receivingNodeClass;
63 - (id) sendingNodeClass;
65 - (NSString *) receivingNodeName;
66 - (NSString *) sendingNodeName;
70 - (VVMIDINode *) virtualSource;
71 - (VVMIDINode *) virtualDest;
73 - (void) setDelegate:(
id)n;
Similar to NSMutableArray, but thread-safe. Internally, uses an NSMutableArray and a rwlock...
Definition: MutLockArray.h:20