Preparing to add widget support
[RExecServer.git] / RInterpreter.h
blob246af927cb4f47d918024d8118fc74bfac1056ff
1 #import <Cocoa/Cocoa.h>
2 #import "RDevice.h"
3 #import "REnvironment.h"
5 @interface RInterpreter : NSObject {
7 char *readerPrompt;
8 unsigned char *readerBuffer,*readerTemp;
9 int readerBufferLength,readerBufferUsed;
10 int readerAddToHistory;
12 NSLock *evalLock;
14 BOOL configured,suppressOutput,allowTerminal,vend,waiting;
15 NSString *vendName;
16 long bufferSize;
17 NSMutableAttributedString *buffer;
18 NSDictionary *outputTag,*errorTag,*promptTag;
20 NSMutableArray *deviceList;
21 int _argc;
22 char **_argv;
26 id delegate;
28 + (RInterpreter*)sharedInterpreter;
29 - (BOOL)isConfigured;
30 - (void)run;
32 #pragma mark Configuration
33 - (void)setArgv:(char**)argv argc:(int)argc;
35 - (void)setDelegate:(id)delegate;
36 - (id)delegate;
38 - (void)setBufferSize:(long)bufferSize;
39 - (long)bufferSize;
41 - (void)setAllowTerminal:(BOOL)aBool;
42 - (BOOL)allowTerminal;
44 - (void)setVend:(BOOL)aBool;
45 - (BOOL)vend;
47 - (void)setHomePath:(NSString*)aPath;
48 - (NSString*)homePath;
50 - (void)setLocaleIdentifier:(NSString*)aLocale;
51 - (NSString*)localeIdentifier;
54 #pragma mark Interaction Protocol
55 - (NSString*)serverName;
57 - (void)awakeConsole;
58 - (void)evaluateInput:(NSString*)aString;
59 - (NSArray*)devices;
60 - (RDevice*)deviceCopyOfType:(NSString*)aType withTarget:(NSString*)aTarget;
62 #pragma mark Moving Data Between Servers
65 - (REnvironment*)environment;
67 @end