5 //#define APICALL _stdcall
19 // ------------------------------------------------------------
20 // This is the interface from the application to the core.
21 class PeercastInstance
28 virtual void APICALL init();
30 virtual void APICALL setAutoConnect(bool);
31 virtual bool APICALL getAutoConnect();
33 virtual void APICALL setActive(bool);
34 virtual bool APICALL getActive();
36 virtual int APICALL getMaxOutput();
37 virtual void APICALL setMaxOutput(int);
39 virtual int APICALL getMaxRelays();
40 virtual void APICALL setMaxRelays(int);
42 virtual void APICALL setServerPort(int);
43 virtual int APICALL getServerPort();
44 virtual void APICALL setServerPassword(const char *);
45 virtual const char *APICALL getServerPassword();
47 virtual void APICALL saveSettings();
49 virtual void APICALL callLocalURL(const char *);
51 virtual void APICALL setNotifyMask(int);
52 virtual int APICALL getNotifyMask();
54 virtual void APICALL quit();
56 virtual Sys * APICALL createSys()=0;
61 // ------------------------------------------------------------
62 // This is the interface from the core to the application.
63 class PeercastApplication
67 virtual const char * APICALL getPath() {return "./";}
68 virtual const char * APICALL getIniFilename() {return "peercast.ini";}
69 virtual bool APICALL clearTemp() { return false; } //JP-EX
70 virtual void APICALL openLogFile() {} //JP-EX
71 virtual void APICALL getDirectory() {} //JP-EX
72 virtual void APICALL printLog(LogBuffer::TYPE, const char *) {}
73 virtual void APICALL addChannel(ChanInfo *) {}
74 virtual void APICALL delChannel(ChanInfo *) {}
75 virtual void APICALL resetChannels() {}
76 virtual void APICALL test(char *) {}
77 virtual const char *APICALL getClientTypeOS() = 0;
78 virtual void APICALL updateSettings() {}
80 virtual void APICALL notifyMessage(ServMgr::NOTIFY_TYPE, const char *) {}
81 virtual void APICALL channelStart(ChanInfo *) {}
82 virtual void APICALL channelStop(ChanInfo *) {}
83 virtual void APICALL channelUpdate(ChanInfo *) {}
87 // ----------------------------------
88 extern PeercastInstance *peercastInst;
89 extern PeercastApplication *peercastApp;
91 // ----------------------------------
95 __declspec( dllexport ) PeercastInstance * newPeercast(PeercastApplication *);
99 // ----------------------------------