Started work on distributed objects
[RExecServer.git] / RInterpreter.h
blob97560fb03c4480720892b55021d30e8f84d365e2
1 #import <Cocoa/Cocoa.h>
4 @interface RInterpreter : NSObject {
6 char *readerPrompt;
7 unsigned char *readerBuffer,*readerTemp;
8 int readerBufferLength,readerBufferUsed;
9 int readerAddToHistory;
11 NSLock *evalLock;
13 BOOL configured,suppressOutput,allowTerminal,vend,waiting;
14 NSString *vendName;
15 long bufferSize;
16 int (*ptr_R_OldReadConsole)(char*,unsigned char*,int,int);
17 void (*ptr_R_OldWriteConsole)(char*,int);
18 void (*ptr_R_OldFlushConsole)();
19 int (*ptr_R_OldShowFiles)(int,char**,char**,char*,int,char*);
22 NSMutableAttributedString *buffer;
24 NSMutableArray *deviceList;
25 int _argc;
26 char **_argv;
30 id delegate;
32 + (RInterpreter*)sharedInterpreter;
33 - (BOOL)isConfigured;
34 - (void)run;
36 #pragma mark Configuration
37 - (void)setArgv:(char**)argv argc:(int)argc;
39 - (void)setDelegate:(id)delegate;
40 - (id)delegate;
42 - (void)setBufferSize:(long)bufferSize;
43 - (long)bufferSize;
45 - (void)setAllowTerminal:(BOOL)aBool;
46 - (BOOL)allowTerminal;
48 - (void)setVend:(BOOL)aBool;
49 - (BOOL)vend;
51 - (void)setHomePath:(NSString*)aPath;
52 - (NSString*)homePath;
54 - (void)setLocaleIdentifier:(NSString*)aLocale;
55 - (NSString*)localeIdentifier;
58 #pragma mark Interaction Protocol
59 - (NSString*)serverName;
61 - (void)awakeConsole;
62 - (void)evaluateInput:(NSString*)aString;
63 - (NSArray*)devices;
65 #pragma mark Moving Data Between Servers
67 - (NSData*)serializeObjectWithName:(NSString*)anName error:(NSError**)anError;
68 - (BOOL)deserializeObject:(NSData*)anObject withName:(NSString*)aName replace:(BOOL)shouldReplace error:(NSError**)error;
69 - (void)copyObjectWithName:(NSString*)anObject toServer:(NSString*)aServer error:(NSError**)anError;
71 @end