diff options
author | Jef <jef@targetspot.com> | 2024-09-24 08:54:57 -0400 |
---|---|---|
committer | Jef <jef@targetspot.com> | 2024-09-24 08:54:57 -0400 |
commit | 20d28e80a5c861a9d5f449ea911ab75b4f37ad0d (patch) | |
tree | 12f17f78986871dd2cfb0a56e5e93b545c1ae0d0 /Src/Plugins/Visualization/vis_avs/rlib.h | |
parent | 537bcbc86291b32fc04ae4133ce4d7cac8ebe9a7 (diff) | |
download | winamp-20d28e80a5c861a9d5f449ea911ab75b4f37ad0d.tar.gz |
Initial community commit
Diffstat (limited to 'Src/Plugins/Visualization/vis_avs/rlib.h')
-rw-r--r-- | Src/Plugins/Visualization/vis_avs/rlib.h | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/Src/Plugins/Visualization/vis_avs/rlib.h b/Src/Plugins/Visualization/vis_avs/rlib.h new file mode 100644 index 00000000..76365d41 --- /dev/null +++ b/Src/Plugins/Visualization/vis_avs/rlib.h @@ -0,0 +1,74 @@ +/* + LICENSE + ------- +Copyright 2005 Nullsoft, Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + + * Neither the name of Nullsoft nor the names of its contributors may be used to + endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR +IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER +IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT +OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#ifndef _RLIB_H_ +#define _RLIB_H_ + +#define DLLRENDERBASE 16384 + +class C_RLibrary { + protected: + typedef struct + { + C_RBASE *(*rf)(char *desc); + int is_r2; + } rfStruct; + rfStruct *RetrFuncs; + + int NumRetrFuncs; + + typedef struct + { + HINSTANCE hDllInstance; + char *idstring; + C_RBASE *(*createfunc)(char *desc); + int is_r2; + + } DLLInfo; + + DLLInfo *DLLFuncs; + int NumDLLFuncs; + + void add_dofx(void *rf, int has_r2); + void initfx(void); + void initdll(void); + void initbuiltinape(void); + void _add_dll(HINSTANCE,class C_RBASE *(__cdecl *)(char *),char *, int); + public: + C_RLibrary(); + ~C_RLibrary(); + C_RBASE *CreateRenderer(int *which, int *has_r2); + HINSTANCE GetRendererInstance(int which,HINSTANCE hThisInstance); + int GetRendererDesc(int which, char *str); + // if which is >= DLLRENDERBASE + // returns "id" of DLL. which is used to enumerate. str is desc + // otherwise, returns 1 on success, 0 on error +}; + +#endif // _RLIB_H_
\ No newline at end of file |