From 7a6ce0d91e0fddbd1ce872726b652f44c9ac89e0 Mon Sep 17 00:00:00 2001 From: Jens Hemprich <31758696+jenshemprich@users.noreply.github.com> Date: Wed, 7 Jun 2006 20:36:56 +0000 Subject: [PATCH] Contains the public functions --- MacGLide Textures Plug-In/TexturesPlugin.cpp | 51 ++++++++++++++++++++ MacGLide Textures Plug-In/TexturesPlugin.h | 24 +++++++++ 2 files changed, 75 insertions(+) create mode 100644 MacGLide Textures Plug-In/TexturesPlugin.cpp create mode 100644 MacGLide Textures Plug-In/TexturesPlugin.h diff --git a/MacGLide Textures Plug-In/TexturesPlugin.cpp b/MacGLide Textures Plug-In/TexturesPlugin.cpp new file mode 100644 index 0000000..4801356 --- /dev/null +++ b/MacGLide Textures Plug-In/TexturesPlugin.cpp @@ -0,0 +1,51 @@ +//************************************************************** +//* MacGLide - Glide to OpenGL Wrapper +//* http://macglide.sourceforge.net/ +//* +//* Shared Library entry points +//* +//* MacGLideTexturesPlugin is OpenSource under LGPL license +//* Originally made by Jens-Olaf Hemprich +//************************************************************** + +#include "TexturesPlugin.h" +#include + +void(*glide_message)(const char *message, ...); +void(*glide_error)(const char *message, ...); + +void setMsgFunction(void(*function)(const char *message, ...)) +{ + glide_message = function; +} + +void setErrorFunction(void(*function)(const char *message, ...)) +{ + glide_error = function; +} + +void GlideMsg(const char* message, ... ) +{ + if (glide_message) + { + va_list(args); + va_start(args, message); + char buffer[StringBufferSize]; + vsnprintf(buffer, StringBufferSize, message, args); + (*glide_message)(&buffer[0]); + va_end(args); + } +} + +void GlideError(const char *message, ... ) +{ + if (glide_error) + { + va_list(args); + va_start(args, message); + char buffer[StringBufferSize]; + vsnprintf(buffer, StringBufferSize, message, args); + (*glide_error)(&buffer[0]); + va_end(args); + } +} diff --git a/MacGLide Textures Plug-In/TexturesPlugin.h b/MacGLide Textures Plug-In/TexturesPlugin.h new file mode 100644 index 0000000..65d96b1 --- /dev/null +++ b/MacGLide Textures Plug-In/TexturesPlugin.h @@ -0,0 +1,24 @@ +//************************************************************** +//* MacGLide - Glide to OpenGL Wrapper +//* http://macglide.sourceforge.net/ +//* +//* Shared Library entry points +//* +//* MacGLideTexturesPlugin is OpenSource under LGPL license +//* Originally made by Jens-Olaf Hemprich +//************************************************************** + +#pragma once + +// size of temporary buffers for string processing +const int StringBufferSize = 256; + +// library entry points +#pragma export on +extern "C" void setMsgFunction(void(*function)(const char *message, ...)); +extern "C" void setErrorFunction(void(*function)(const char *message, ...)); +#pragma export off + +// Let's have the same interface for logging +void GlideMsg(const char *message, ...); +void GlideError(const char *message, ...);