aboutsummaryrefslogtreecommitdiff
path: root/Src/Plugins/Library/ml_online/config.h
diff options
context:
space:
mode:
Diffstat (limited to 'Src/Plugins/Library/ml_online/config.h')
-rw-r--r--Src/Plugins/Library/ml_online/config.h54
1 files changed, 54 insertions, 0 deletions
diff --git a/Src/Plugins/Library/ml_online/config.h b/Src/Plugins/Library/ml_online/config.h
new file mode 100644
index 00000000..a4e3f034
--- /dev/null
+++ b/Src/Plugins/Library/ml_online/config.h
@@ -0,0 +1,54 @@
+#ifndef NULLSOFT_ONLINEMEDIA_PLUGIN_CONFIG_HEADER
+#define NULLSOFT_ONLINEMEDIA_PLUGIN_CONFIG_HEADER
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1020)
+#pragma once
+#endif
+
+#include <wtypes.h>
+
+
+#define C_CONFIG_WIN32NATIVE
+class C_Config
+{
+ public:
+ C_Config(char *ini);
+ ~C_Config();
+ void Flush(void);
+ void WriteInt(char *name, int value);
+ char *WriteString(char *name, char *string);
+ int ReadInt(char *name, int defvalue);
+ char *ReadString(char *name, char *defvalue);
+
+ const char* GetPath() { return m_inifile; }
+
+ private:
+#ifndef C_CONFIG_WIN32NATIVE
+ typedef struct
+ {
+ char name[16];
+ char *value;
+ } strType;
+
+ strType *m_strs;
+ int m_dirty;
+ int m_num_strs, m_num_strs_alloc;
+#else
+ char m_strbuf[8192];
+#endif
+
+ char *m_inifile;
+};
+
+// set lpSectionName = NULL to write to default section;
+DWORD Config_ReadStr(LPCSTR lpSectionName, LPCSTR lpKeyName, LPCSTR lpDefault, LPSTR lpReturnedString, DWORD nSize);
+UINT Config_ReadInt(LPCSTR lpSectionName, LPCSTR lpKeyName, INT nDefault);
+HRESULT Config_WriteStr(LPCSTR lpSectionName, LPCSTR lpKeyName, LPCSTR lpString);
+HRESULT Config_WriteInt(LPCSTR lpSectionName, LPCSTR lpKeyName, INT nValue);
+HRESULT Config_WriteSection(LPCSTR lpSectionName, LPCSTR lpData);
+
+typedef BOOL (CALLBACK *ReadServiceIdCallback)(UINT /*serviceId*/, void* /*data*/);
+HRESULT Config_ReadServiceIdList(LPCSTR lpSectionName, LPCSTR lpKeyName, CHAR separator, ReadServiceIdCallback callback, void *data);
+
+
+#endif //NULLSOFT_ONLINEMEDIA_PLUGIN_CONFIG_HEADER \ No newline at end of file