2 SuperCollider real time audio synthesis system
3 Copyright (c) 2002 James McCartney. All rights reserved.
4 http://www.audiosynth.com
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
21 #import <Cocoa/Cocoa.h>
24 @interface SCVirtualMachine
: NSObject
{
25 NSMutableArray
*deferredOperations
;
26 NSMutableArray
*guiWindows
;
27 NSTimer
*deferredTaskTimer
;
28 NSTimer
*appClockTimer
;
29 float deferredTaskInterval
;
36 - (void)setDeferredTaskInterval
: (float) interval
;
37 - (void)doPeriodicTask
: (NSTimer
*) timer
;
38 - (void)doClockTask
: (NSTimer
*) timer
;
39 - (void)setCmdLine
: (const char*) text length
: (int)length
;
40 - (void)sendMain
: (char*) methodName
;
42 - (void)defer
: (NSInvocation
*) action
;
43 - (void)performDeferredOperations
;
44 - (void)removeDeferredOperationsFor
:(id
) object
;
45 - (void)doAnimatedViews
;
47 - (void)addWindow
: (NSWindow
*)window
;
48 - (void)closeAllGUIWindows
;
50 - (IBAction
) runMain
: (id
) sender
;
51 - (IBAction
) stopMain
: (id
) sender
;
52 - (IBAction
) hardStopMain
: (id
) sender
;
53 - (IBAction
) preferences
: (id
) sender
;
54 - (IBAction
) compileLibrary
: (id
) sender
;
55 - (IBAction
) newSCWindow
: (id
) sender
;
56 - (IBAction
)clearPostWindow
:(id
)sender
;
57 - (void)postWindowToFront
:(id
)sender
;
59 // deferred primitives
62 - (void)becomeFullScreen
: (NSWindow
*)window
;
63 - (void)endFullScreen
: (NSWindow
*)window
;
64 - (void)loadUserPanel
:(NSString
*)filename SCObject
: (void*)scobj
;
65 - (void) windowDidBecomeKey
:(NSNotification
*)aNotification
;
66 - (void) runAsModal
:(NSWindow
*)window
;
67 - (void) runAsModalSheet
: (NSWindow
*)sheet forWindow
:(NSWindow
*)window
;
68 - (void) sheetDidEnd
:(NSWindow
*)sheet returnCode
:(int)returnCode contextInfo
:(void *)contextInfo
;
70 - (void) receiveSleepNote
: (NSNotification
*) note
;
71 - (void) receiveWakeNote
: (NSNotification
*) note
;
73 -(IBAction
)showHelpFor
:(id
)sender
;
74 -(IBAction
)showHelpBrowser
:(id
)sender
;
75 -(IBAction
)showHelpSearch
:(id
)sender
;
76 -(IBAction
)showClassBrowser
:(id
)sender
;
78 - (IBAction
) executeSelection
: (id
)sender
;
79 - (IBAction
) openCode
: (id
)sender
;
80 - (IBAction
) methodTemplates
: (id
)sender
;
81 - (IBAction
) methodReferences
: (id
)sender
;