Move Thread::Semaphore from ext/ to dist/
[perl.git] / NetWare / iperlhost.h
1
2 /*
3  * Copyright � 2001 Novell, Inc. All Rights Reserved.
4  *
5  * You may distribute under the terms of either the GNU General Public
6  * License or the Artistic License, as specified in the README file.
7  *
8  */
9
10 /*
11  * FILENAME     :   iperlhost.h
12  * DESCRIPTION  :   IPerlHost class file.
13  * Author       :   SGP
14  * Date Created :   January 2001.
15  * Date Modified:   July 2nd 2001.
16  */
17
18
19
20 #ifndef __iPerlHost_H__
21 #define __iPerlHost_H__
22
23
24 #include "EXTERN.h"
25 #include "perl.h"
26
27
28 class IPerlHost
29 {
30 public:
31         virtual int VersionNumber() = 0;
32
33         virtual int PerlCreate(PerlInterpreter *my_perl) = 0;
34         virtual int PerlParse(PerlInterpreter *my_perl,int argc, char** argv, char** env) = 0;
35         virtual int PerlRun(PerlInterpreter *my_perl) = 0;
36         virtual void PerlDestroy(PerlInterpreter *my_perl) = 0;
37         virtual void PerlFree(PerlInterpreter *my_perl) = 0;
38
39         //virtual bool RegisterWithThreadTable(void)=0;
40         //virtual bool UnregisterWithThreadTable(void)=0;
41 };
42
43 extern "C" IPerlHost* AllocStdPerl();
44 extern "C" void FreeStdPerl(IPerlHost* pPerlHost);
45
46
47 #endif  // __iPerlHost_H__
48