aboutsummaryrefslogtreecommitdiff
path: root/Src/Wasabi/api/wac/compon.h
diff options
context:
space:
mode:
authorJef <jef@targetspot.com>2024-09-24 08:54:57 -0400
committerJef <jef@targetspot.com>2024-09-24 08:54:57 -0400
commit20d28e80a5c861a9d5f449ea911ab75b4f37ad0d (patch)
tree12f17f78986871dd2cfb0a56e5e93b545c1ae0d0 /Src/Wasabi/api/wac/compon.h
parent537bcbc86291b32fc04ae4133ce4d7cac8ebe9a7 (diff)
downloadwinamp-20d28e80a5c861a9d5f449ea911ab75b4f37ad0d.tar.gz
Initial community commit
Diffstat (limited to 'Src/Wasabi/api/wac/compon.h')
-rw-r--r--Src/Wasabi/api/wac/compon.h56
1 files changed, 56 insertions, 0 deletions
diff --git a/Src/Wasabi/api/wac/compon.h b/Src/Wasabi/api/wac/compon.h
new file mode 100644
index 00000000..3dcae3b4
--- /dev/null
+++ b/Src/Wasabi/api/wac/compon.h
@@ -0,0 +1,56 @@
+//PORTABLE
+#ifndef _COMPON_H
+#define _COMPON_H
+
+#include <bfc/wasabi_std.h>
+#include <bfc/string/bfcstring.h>
+#include <bfc/ptrlist.h>
+
+class ifc_canvas;
+class CfgItem; // see cfgitem.h
+class CompWnd;
+class ComponentObject;
+class Container;
+class WaComponent;
+class ComponPostEntry;
+
+
+class ComponentManager {
+public:
+ static void addStaticComponent(WaComponent *component);
+ static void addPreloadComponent(const wchar_t *filename);
+ static void loadPreloads();
+
+ static void loadAll(const wchar_t *path);
+
+ static void postLoad(int f=TRUE);
+
+ static void unloadAll();
+
+ static int checkGUID(GUID &g, int invalid_ok=FALSE); // boolean of if we should load it
+
+ static WaComponent *enumComponent(int component);
+
+ static void broadcastNotify(int cmd, int param1=0, int param2=0);
+ static void sendNotify(GUID guid, int cmd, int param1=0, int param2=0);
+ static int sendCommand(GUID guid, const wchar_t *command, int p1=0, int p2=0, void *ptr=NULL, int ptrlen=0);
+ static int postCommand(GUID guid, const wchar_t *command, int p1, int p2, void *ptr, int ptrlen, int waitforanswer);
+ static void broadcastCommand(const wchar_t *command, int p1=0, int p2=0, void *ptr=NULL, int ptrlen=0);
+ static int getNumComponents();
+ static GUID getComponentGUID(int c);
+ static const wchar_t *getComponentName(GUID g);
+ static CfgItem *getCfgInterface(GUID g);
+ static WaComponent *getComponentFromGuid(GUID g);
+
+ static void load(const wchar_t *filename);
+
+ static const wchar_t *getComponentPath(GUID g);
+
+ static void startupDBs();
+ static void shutdownDBs();
+
+ static void mainThread_handlePostCommands();
+ static PtrList<ComponPostEntry> componPostEntries;
+};
+
+#endif