From 095b7e513f736567848173f2572d8b329ad75af9 Mon Sep 17 00:00:00 2001 From: Travis CI Date: Thu, 19 Mar 2015 19:32:08 +0000 Subject: Gem 206d71791bc3642e8c5391a4c59c30ba7411fab8 osx/x86_64 built 'coverity_scan:206d71791bc3642e8c5391a4c59c30ba7411fab8' for osx/x86_64 --- Gem/develop/include/Gem/Base/CPPExtern.h | 371 ------------------------- Gem/develop/include/Gem/Base/GemBase.h | 133 --------- Gem/develop/include/Gem/Base/GemCache.h | 4 - Gem/develop/include/Gem/Base/GemContext.h | 59 ---- Gem/develop/include/Gem/Base/GemContextData.h | 4 - Gem/develop/include/Gem/Base/GemEvent.h | 4 - Gem/develop/include/Gem/Base/GemExportDef.h | 4 - Gem/develop/include/Gem/Base/GemFuncUtil.h | 4 - Gem/develop/include/Gem/Base/GemGL.h | 4 - Gem/develop/include/Gem/Base/GemGLBase.h | 23 -- Gem/develop/include/Gem/Base/GemGLUtil.h | 4 - Gem/develop/include/Gem/Base/GemGluObj.h | 92 ------ Gem/develop/include/Gem/Base/GemLoaders.h | 4 - Gem/develop/include/Gem/Base/GemMan.h | 4 - Gem/develop/include/Gem/Base/GemMath.h | 4 - Gem/develop/include/Gem/Base/GemPBuffer.h | 4 - Gem/develop/include/Gem/Base/GemPathBase.h | 71 ----- Gem/develop/include/Gem/Base/GemPixConvert.h | 4 - Gem/develop/include/Gem/Base/GemPixDualObj.h | 190 ------------- Gem/develop/include/Gem/Base/GemPixImageLoad.h | 4 - Gem/develop/include/Gem/Base/GemPixImageSave.h | 4 - Gem/develop/include/Gem/Base/GemPixObj.h | 149 ---------- Gem/develop/include/Gem/Base/GemPixPete.h | 4 - Gem/develop/include/Gem/Base/GemPixUtil.h | 4 - Gem/develop/include/Gem/Base/GemSIMD.h | 4 - Gem/develop/include/Gem/Base/GemShape.h | 141 ---------- Gem/develop/include/Gem/Base/GemState.h | 4 - Gem/develop/include/Gem/Base/GemVector.h | 4 - Gem/develop/include/Gem/Base/GemVersion.h | 4 - Gem/develop/include/Gem/Base/GemWindow.h | 211 -------------- Gem/develop/include/Gem/Base/Matrix.h | 4 - Gem/develop/include/Gem/Base/TextBase.h | 245 ---------------- 32 files changed, 1769 deletions(-) delete mode 100644 Gem/develop/include/Gem/Base/CPPExtern.h delete mode 100644 Gem/develop/include/Gem/Base/GemBase.h delete mode 100644 Gem/develop/include/Gem/Base/GemCache.h delete mode 100644 Gem/develop/include/Gem/Base/GemContext.h delete mode 100644 Gem/develop/include/Gem/Base/GemContextData.h delete mode 100644 Gem/develop/include/Gem/Base/GemEvent.h delete mode 100644 Gem/develop/include/Gem/Base/GemExportDef.h delete mode 100644 Gem/develop/include/Gem/Base/GemFuncUtil.h delete mode 100644 Gem/develop/include/Gem/Base/GemGL.h delete mode 100644 Gem/develop/include/Gem/Base/GemGLBase.h delete mode 100644 Gem/develop/include/Gem/Base/GemGLUtil.h delete mode 100644 Gem/develop/include/Gem/Base/GemGluObj.h delete mode 100644 Gem/develop/include/Gem/Base/GemLoaders.h delete mode 100644 Gem/develop/include/Gem/Base/GemMan.h delete mode 100644 Gem/develop/include/Gem/Base/GemMath.h delete mode 100644 Gem/develop/include/Gem/Base/GemPBuffer.h delete mode 100644 Gem/develop/include/Gem/Base/GemPathBase.h delete mode 100644 Gem/develop/include/Gem/Base/GemPixConvert.h delete mode 100644 Gem/develop/include/Gem/Base/GemPixDualObj.h delete mode 100644 Gem/develop/include/Gem/Base/GemPixImageLoad.h delete mode 100644 Gem/develop/include/Gem/Base/GemPixImageSave.h delete mode 100644 Gem/develop/include/Gem/Base/GemPixObj.h delete mode 100644 Gem/develop/include/Gem/Base/GemPixPete.h delete mode 100644 Gem/develop/include/Gem/Base/GemPixUtil.h delete mode 100644 Gem/develop/include/Gem/Base/GemSIMD.h delete mode 100644 Gem/develop/include/Gem/Base/GemShape.h delete mode 100644 Gem/develop/include/Gem/Base/GemState.h delete mode 100644 Gem/develop/include/Gem/Base/GemVector.h delete mode 100644 Gem/develop/include/Gem/Base/GemVersion.h delete mode 100644 Gem/develop/include/Gem/Base/GemWindow.h delete mode 100644 Gem/develop/include/Gem/Base/Matrix.h delete mode 100644 Gem/develop/include/Gem/Base/TextBase.h (limited to 'Gem/develop/include/Gem/Base') diff --git a/Gem/develop/include/Gem/Base/CPPExtern.h b/Gem/develop/include/Gem/Base/CPPExtern.h deleted file mode 100644 index 0350681..0000000 --- a/Gem/develop/include/Gem/Base/CPPExtern.h +++ /dev/null @@ -1,371 +0,0 @@ -/*----------------------------------------------------------------- -LOG - GEM - Graphics Environment for Multimedia - - The base class for all externs written in C++ - - Copyright (c) 1997-1999 Mark Danks. mark@danks.org - For information on usage and redistribution, and for a DISCLAIMER OF ALL - WARRANTIES, see the file, "GEM.LICENSE.TERMS" in this distribution. - ------------------------------------------------------------------*/ - -#ifndef _INCLUDE__GEM_BASE_CPPEXTERN_H_ -#define _INCLUDE__GEM_BASE_CPPEXTERN_H_ - -#include "Gem/ExportDef.h" - -#include "Gem/RTE.h" -#include "Gem/Version.h" - -#include -#include - -class CPPExtern; - -/* forward declaration of a generic exception handler for GemExceptions */ -namespace gem { - GEM_EXTERN void catchGemException(const char*objname, const t_object*obj); -}; - -/*----------------------------------------------------------------- -------------------------------------------------------------------- -CLASS - Obj_header - - The obligatory object header - -DESCRIPTION - - This is in a separate struct to assure that when PD uses the - class, the t_object is the very first thing. If it were the - first thing in CPPExtern, then there could be problems with - the vtable. - ------------------------------------------------------------------*/ -struct GEM_EXTERN Obj_header -{ - ////////// - // The obligatory object header - t_object pd_obj; - - ////////// - // Our data structure - CPPExtern *data; - - // This has a dummy arg so that NT won't complain - void *operator new(size_t, void *location, void *dummy); -}; - -/*----------------------------------------------------------------- -------------------------------------------------------------------- -CLASS - CPPExtern - - The base class for all externs written in C++ - -DESCRIPTION - - Each extern which is written in C++ needs to use the #defines at the - end of this header file. Currently, the operator new(size_t) and - operator delete(void *) are not overridden. This will be a problem - when PD expects everything to fit in its memory space and control - all memory allocation. - - The define - - CPPEXTERN_HEADER(NEW_CLASS, PARENT_CLASS); - - should be somewhere in your header file. - One of the defines like - - CPPEXTERN_NEW(NEW_CLASS); - CPPEXTERN_NEW_WITH_TWO_ARGS(NEW_CLASS, t_floatarg, A_FLOAT, t_floatarg, A_FLOAT); - - should be the first thing in your implementation file. - NEW_CLASS is the name of your class and PARENT_CLASS is the - parent of your class. - ------------------------------------------------------------------*/ -class GEM_EXTERN CPPExtern -{ - public: - - ////////// - // Constructor - CPPExtern(void); - - ////////// - // The Pd header - t_object *x_obj; - - ////////// - // Destructor - virtual ~CPPExtern(void) = 0; - - ////////// - // Get the object's canvas - const t_canvas *getCanvas(void) const { return(m_canvas); } - - ////////// - // This is a holder - don't touch it - static t_object *m_holder; - - ////////// - // my name - static char *m_holdname; - t_symbol *m_objectname; - - protected: - - ////////// - // Creation callback - static void real_obj_setupCallback(t_class *) {} - - private: - - ////////// - // The canvas that the object is in - t_canvas *m_canvas; - - public: - // these call pd's print-functions, and eventually prepend the object's name - void startpost(const char*format, ...) const; - void post(const char*format, ...) const; - void endpost(void) const; - void verbose(const int level, const char*format, ...) const; - void error(const char*format, ...) const; /* internally uses pd_error() */ - - // searches for a file based on the parent abstraction's path - // wraps open_via_path() and canvas_makefilename() - // the full filename is returned - // if the file does not exist, it is constructed - std::string findFile(const std::string filename, const std::string ext) const; - std::string findFile(const std::string filename) const; - - private: - mutable bool m_endpost; /* internal state for startpost/post/endpost */ - static bool checkGemVersion(const int major, const int minor); - CPPExtern(const CPPExtern&); - virtual CPPExtern&operator=(const CPPExtern&); -}; - -//////////////////////////////////////// -// This should be used in the header -//////////////////////////////////////// - -#define CPPEXTERN_HEADER(NEW_CLASS, PARENT_CLASS) \ -public: \ -static void obj_freeCallback(void *data) \ -{ CPPExtern *mydata = ((Obj_header *)data)->data; delete mydata; \ - ((Obj_header *)data)->Obj_header::~Obj_header(); } \ -static void real_obj_setupCallback(t_class *classPtr) \ -{ PARENT_CLASS::real_obj_setupCallback(classPtr); \ - NEW_CLASS::obj_setupCallback(classPtr); } \ -private: \ -static inline NEW_CLASS *GetMyClass(void *data) {return((NEW_CLASS *)((Obj_header *)data)->data);} \ -static void obj_setupCallback(t_class *classPtr); - - -//////////////////////////////////////// -// This should be the first thing in the implementation file -//////////////////////////////////////// - -// -// NO ARGUMENTS -///////////////////////////////////////////////// -#define CPPEXTERN_NEW(NEW_CLASS) \ - REAL_NEW__CLASS(NEW_CLASS); \ - static void* create_ ## NEW_CLASS (void) \ - REAL_NEW__CREATE1(NEW_CLASS) \ - obj->data = new NEW_CLASS(); \ - REAL_NEW__CREATE2(NEW_CLASS) \ - REAL_NEW__SETUP1(NEW_CLASS) \ - REAL_NEW__SETUP2(NEW_CLASS) - -// -// ONE ARGUMENT -///////////////////////////////////////////////// -#define CPPEXTERN_NEW_WITH_ONE_ARG(NEW_CLASS, TYPE, PD_TYPE) \ - REAL_NEW__CLASS(NEW_CLASS); \ - static void* create_ ## NEW_CLASS (TYPE arg) \ - REAL_NEW__CREATE1(NEW_CLASS) \ - obj->data = new NEW_CLASS(arg); \ - REAL_NEW__CREATE2(NEW_CLASS) \ - REAL_NEW__SETUP1(NEW_CLASS) \ - PD_TYPE, \ - REAL_NEW__SETUP2(NEW_CLASS) - -// -// GIMME ARGUMENT -///////////////////////////////////////////////// -#define CPPEXTERN_NEW_WITH_GIMME(NEW_CLASS) \ - REAL_NEW__CLASS(NEW_CLASS); \ - static void* create_ ## NEW_CLASS (t_symbol*s, int argc, t_atom*argv) \ - REAL_NEW__CREATE1(NEW_CLASS) \ - obj->data = new NEW_CLASS(argc,argv); \ - REAL_NEW__CREATE2(NEW_CLASS) \ - REAL_NEW__SETUP1(NEW_CLASS) \ - A_GIMME, \ - REAL_NEW__SETUP2(NEW_CLASS) - -// -// TWO ARGUMENTS -///////////////////////////////////////////////// -#define CPPEXTERN_NEW_WITH_TWO_ARGS(NEW_CLASS, TYPE, PD_TYPE, TTWO, PD_TWO) \ - REAL_NEW__CLASS(NEW_CLASS); \ - static void* create_ ## NEW_CLASS (TYPE arg, TTWO arg2) \ - REAL_NEW__CREATE1(NEW_CLASS) \ - obj->data = new NEW_CLASS(arg, arg2); \ - REAL_NEW__CREATE2(NEW_CLASS) \ - REAL_NEW__SETUP1(NEW_CLASS) \ - PD_TYPE, PD_TWO, \ - REAL_NEW__SETUP2(NEW_CLASS) - -// -// THREE ARGUMENTS -///////////////////////////////////////////////// -#define CPPEXTERN_NEW_WITH_THREE_ARGS(NEW_CLASS, TYPE, PD_TYPE, TTWO, PD_TWO, TTHREE, PD_THREE) \ - REAL_NEW__CLASS(NEW_CLASS); \ - static void* create_ ## NEW_CLASS (TYPE arg, TTWO arg2, TTHREE arg3) \ - REAL_NEW__CREATE1(NEW_CLASS) \ - obj->data = new NEW_CLASS(arg, arg2, arg3); \ - REAL_NEW__CREATE2(NEW_CLASS) \ - REAL_NEW__SETUP1(NEW_CLASS) \ - PD_TYPE, PD_TWO, PD_THREE, \ - REAL_NEW__SETUP2(NEW_CLASS) - -// -// FOUR ARGUMENTS -///////////////////////////////////////////////// -#define CPPEXTERN_NEW_WITH_FOUR_ARGS(NEW_CLASS, TYPE, PD_TYPE, TTWO, PD_TWO, TTHREE, PD_THREE, TFOUR, PD_FOUR) \ - REAL_NEW__CLASS(NEW_CLASS); \ - static void* create_ ## NEW_CLASS (TYPE arg, TTWO arg2, TTHREE arg3, TFOUR arg4) \ - REAL_NEW__CREATE1(NEW_CLASS) \ - obj->data = new NEW_CLASS(arg, arg2, arg3, arg4); \ - REAL_NEW__CREATE2(NEW_CLASS) \ - REAL_NEW__SETUP1(NEW_CLASS) \ - PD_TYPE, PD_TWO, PD_THREE, PD_FOUR, \ - REAL_NEW__SETUP2(NEW_CLASS) - -// -// FIVE ARGUMENTS -///////////////////////////////////////////////// -#define CPPEXTERN_NEW_WITH_FIVE_ARGS(NEW_CLASS, TYPE, PD_TYPE, TTWO, PD_TWO, TTHREE, PD_THREE, TFOUR, PD_FOUR, TFIVE, PD_FIVE) \ - REAL_NEW__CLASS(NEW_CLASS); \ - static void* create_ ## NEW_CLASS (TYPE arg, TTWO arg2, TTHREE arg3, TFOUR arg4, TFIVE arg5) \ - REAL_NEW__CREATE1(NEW_CLASS) \ - obj->data = new NEW_CLASS(arg, arg2, arg3, arg4, arg5); \ - REAL_NEW__CREATE2(NEW_CLASS) \ - REAL_NEW__SETUP1(NEW_CLASS) \ - PD_TYPE, PD_TWO, PD_THREE, PD_FOUR, PD_FIVE \ - REAL_NEW__SETUP2(NEW_CLASS) - - -////////////////////////////////////////////////////////////////////////////// -// These should never be called or used directly!!! -// -// -/////////////////////////////////////////////////////////////////////////////// - -#define REAL_NEW__CLASS(NEW_CLASS) STATIC_CLASS t_class * NEW_CLASS ## _class -#define REAL_NEW__CREATE1(NEW_CLASS) { \ - try{ \ - Obj_header *obj = new (pd_new(NEW_CLASS ## _class),(void *)NULL) Obj_header; \ - CPPExtern::m_holder = &obj->pd_obj; \ - CPPExtern::m_holdname=(char*)#NEW_CLASS; - -#define REAL_NEW__CREATE2(NEW_CLASS) \ - CPPExtern::m_holder = NULL; \ - CPPExtern::m_holdname=NULL; \ - return(obj); \ - } catch (...) {gem::catchGemException(CPPExtern::m_holdname, CPPExtern::m_holder); return NULL;} \ - } - -#define REAL_NEW__SETUP1(NEW_CLASS) \ - extern "C" { \ - GEM_EXPORT void NEW_CLASS ## _setup(void) \ - { \ - static int recalled=0; if(recalled)return; recalled=1; \ - NEW_CLASS ## _class = class_new( \ - gensym(#NEW_CLASS), \ - (t_newmethod)create_ ## NEW_CLASS, \ - (t_method)&NEW_CLASS::obj_freeCallback, \ - sizeof(Obj_header), GEM_CLASSFLAGS, -#define REAL_NEW__SETUP2(NEW_CLASS) \ - A_NULL); \ - SET_HELPSYMBOL(NEW_CLASS); \ - NEW_CLASS::real_obj_setupCallback(NEW_CLASS ## _class); \ - } \ - } \ - AUTO_REGISTER_CLASS(NEW_CLASS); - - -/////////////////////////////////////////////////////////////////////////////// -// static class: -// by default classes are declared static -// however, sometimes we need classes not-static, so we can refer to them -// from other classes -/////////////////////////////////////////////////////////////////////////////// -#ifdef NO_STATIC_CLASS -# define STATIC_CLASS -#else -# define STATIC_CLASS static -#endif - -/////////////////////////////////////////////////////////////////////////////// -// auto registering a class -// this creates a dummy class, whose constructor calls the setup-function -// (registering the class with pd) -// a static copy of this class is created at runtime, to actually do the setup-call -/////////////////////////////////////////////////////////////////////////////// -#ifdef NO_AUTO_REGISTER_CLASS -// if NO_AUTO_REGISTER_CLASS is defined, we will not register the class -# define AUTO_REGISTER_CLASS(NEW_CLASS) \ - static int NEW_CLASS ## _dummyinstance -#else -// for debugging we can show the which classes are auto-registering -# if 0 -# define POST_AUTOREGISTER(NEW_CLASS) post("auto-registering: "#NEW_CLASS) -# else -# define POST_AUTOREGISTER(NEW_CLASS) -# endif -# define AUTO_REGISTER_CLASS(NEW_CLASS) \ - class NEW_CLASS ## _cppclass { \ - public: \ - NEW_CLASS ## _cppclass(void) {POST_AUTOREGISTER(NEW_CLASS); NEW_CLASS ## _setup(); } \ -}; \ - static NEW_CLASS ## _cppclass NEW_CLASS ## _instance -#endif - -/////////////////////////////////////////////////////////////////////////////// -// setting the help-symbol -/////////////////////////////////////////////////////////////////////////////// -#if defined HELPSYMBOL_BASE || defined HELPSYMBOL -# ifndef HELPSYMBOL_BASE -# define HELPSYMBOL_BASE "" -# endif - -# ifndef HELPSYMBOL -# define SET_HELPSYMBOL(NEW_CLASS) \ - class_sethelpsymbol(NEW_CLASS ## _class, gensym(HELPSYMBOL_BASE #NEW_CLASS)) -# else -# define SET_HELPSYMBOL(NEW_CLASS) \ - class_sethelpsymbol(NEW_CLASS ## _class, gensym(HELPSYMBOL_BASE HELPSYMBOL)) -# endif - -#else -# define SET_HELPSYMBOL(NEW_CLASS) -#endif /* HELPSYMBOL */ - -/////////////////////////////////////////////////////////////////////////////// -// setting the class-flags -/////////////////////////////////////////////////////////////////////////////// -#ifndef GEM_CLASSFLAGS -# define GEM_CLASSFLAGS 0 -#endif - -// macros for boilerplate code to object messages -#include "RTE/MessageCallbacks.h" - -#endif // for header file diff --git a/Gem/develop/include/Gem/Base/GemBase.h b/Gem/develop/include/Gem/Base/GemBase.h deleted file mode 100644 index 09e6a8f..0000000 --- a/Gem/develop/include/Gem/Base/GemBase.h +++ /dev/null @@ -1,133 +0,0 @@ -/*----------------------------------------------------------------- - LOG - GEM - Graphics Environment for Multimedia - - The base class for all of the gem objects - - Copyright (c) 1997-1999 Mark Danks. mark@danks.org - Copyright (c) Günther Geiger. - Copyright (c) 2001-2011 IOhannes m zmölnig. forum::für::umläute. IEM. zmoelnig@iem.at - For information on usage and redistribution, and for a DISCLAIMER OF ALL - WARRANTIES, see the file, "GEM.LICENSE.TERMS" in this distribution. - - -----------------------------------------------------------------*/ - -#ifndef _INCLUDE__GEM_BASE_GEMBASE_H_ -#define _INCLUDE__GEM_BASE_GEMBASE_H_ - -#include "Gem/GemGL.h" -#include "Gem/ContextData.h" - -#include "Base/CPPExtern.h" - -class GemCache; -class GemState; -/*----------------------------------------------------------------- - ------------------------------------------------------------------- - CLASS - GemBase - - Base class for gem objects - - DESCRIPTION - - -----------------------------------------------------------------*/ -class GEM_EXTERN GemBase : public CPPExtern -{ - protected: - - ////////// - // Constructor - GemBase(); - - ////////// - // Destructor - virtual ~GemBase(); - - ////////// - virtual void render(GemState *state) = 0; - - ////////// - void continueRender(GemState *state); - - ////////// - // After objects below you in the chain have finished. - // You should reset all GEM/OpenGL states here. - virtual void postrender(GemState *) { ; } - - ////////// - // Called when rendering stops - -#if 1/*(jmz) this seems to be for gem2pdp*/ - virtual void stoprender() { realStopRendering(); } -#endif - - ////////// - // If you care about the start of rendering - virtual void startRendering() { ; } - - ////////// - // If you care about the stop of rendering - virtual void stopRendering() { ; } - - - ////////// - // has rendering started ? - // deprecated, use 'getState()==RENDERING' instead - bool gem_amRendering; - - ////////// - // If anything in the object has changed - virtual void setModified(); - - ////////// - // Don't mess with this unless you know what you are doing. - GemCache *m_cache; - ////////// - // check whether this object has changed - bool m_modified; - - ////////// - // The outlet - t_outlet *m_out1; - - - ////////// - // this gets called in the before the startRendering() routine - // if it returns TRUE, the object's startRendering(), render() and stopRendering() functions will be called - // it it returns FALSE, the object will be disabled - // when rendering is restarted, this function get's called again - // the default is to enable rendering - // this function is important if you want to disable an object because it cannot be used (e.g. missing driver support) - virtual bool isRunnable(void); - - ////////// - // creation callback - static void real_obj_setupCallback(t_class *classPtr) - { CPPExtern::real_obj_setupCallback(classPtr); GemBase::obj_setupCallback(classPtr); } - - enum RenderState {INIT, ENABLED, DISABLED, RENDERING, MODIFIED}; - - private: - - void realStopRendering(); - void gem_startstopMess(int state); - void gem_renderMess(GemCache* state, GemState* state2); - - static inline GemBase *GetMyClass(void *data) {return((GemBase *)((Obj_header *)data)->data);} - - friend class gemhead; - static void obj_setupCallback(t_class *classPtr); - static void gem_MessCallback(void *, t_symbol *,int, t_atom*); - - /* whether the object is internally disabled or not - * objects are to be disabled, if the system cannot make use of them, e.g. because of unsupported openGL features - */ - gem::ContextDatam_enabled; - gem::ContextDatam_state; - - protected: - enum RenderState getState(void); -}; - -#endif // for header file diff --git a/Gem/develop/include/Gem/Base/GemCache.h b/Gem/develop/include/Gem/Base/GemCache.h deleted file mode 100644 index cc52dab..0000000 --- a/Gem/develop/include/Gem/Base/GemCache.h +++ /dev/null @@ -1,4 +0,0 @@ -#ifdef __GNUC__ -# warning GemCache.h is deprecated - please include "Gem/Cache.h" instead -#endif -#include "Gem/Cache.h" diff --git a/Gem/develop/include/Gem/Base/GemContext.h b/Gem/develop/include/Gem/Base/GemContext.h deleted file mode 100644 index 7081051..0000000 --- a/Gem/develop/include/Gem/Base/GemContext.h +++ /dev/null @@ -1,59 +0,0 @@ -/*----------------------------------------------------------------- -LOG - GEM - Graphics Environment for Multimedia - - a rendering context - - Copyright (c) 2009-2011 IOhannes m zmölnig. forum::für::umläute. IEM. zmoelnig@iem.at - For information on usage and redistribution, and for a DISCLAIMER OF ALL - WARRANTIES, see the file, "GEM.LICENSE.TERMS" in this distribution. - ------------------------------------------------------------------*/ -#ifndef _INCLUDE__GEM_BASE_GEMCONTEXT_H_ -#define _INCLUDE__GEM_BASE_GEMCONTEXT_H_ - -#include "Gem/ExportDef.h" -#include "Gem/GemGL.h" - - -# if defined _WIN32 -typedef struct WGLEWContextStruct WGLEWContext; -# define GemGlewXContext WGLEWContext -# elif defined __linux__ || defined HAVE_GL_GLX_H -typedef struct GLXEWContextStruct GLXEWContext; -# define GemGlewXContext GLXEWContext -# else -// no GemGlewXContext on this platform... -# endif - -typedef struct GLEWContextStruct GLEWContext; - -namespace gem { -class GEM_EXTERN Context { - private: - class PIMPL; - PIMPL*m_pimpl; - - public: - Context(void); - Context(const Context&); - virtual ~Context(void); - - Context&operator=(const Context&); - - // make context current - bool push(void); - - // make context uncurrent - bool pop(void); - - public: - static unsigned int getContextId(void); - static GLEWContext*getGlewContext(void); -#ifdef GemGlewXContext - static GemGlewXContext*getGlewXContext(void); -#endif /* GemGlewXContext */ -}; - -}; // namespace -#endif // for header file diff --git a/Gem/develop/include/Gem/Base/GemContextData.h b/Gem/develop/include/Gem/Base/GemContextData.h deleted file mode 100644 index 1f722c8..0000000 --- a/Gem/develop/include/Gem/Base/GemContextData.h +++ /dev/null @@ -1,4 +0,0 @@ -#ifdef __GNUC__ -# warning Base/GemContextData.h is deprecated - please include "Gem/ContextData.h" instead -#endif -#include "Gem/ContextData.h" diff --git a/Gem/develop/include/Gem/Base/GemEvent.h b/Gem/develop/include/Gem/Base/GemEvent.h deleted file mode 100644 index 5baedbc..0000000 --- a/Gem/develop/include/Gem/Base/GemEvent.h +++ /dev/null @@ -1,4 +0,0 @@ -#ifdef __GNUC__ -# warning GemEvent.h is deprecated - please include "Gem/Event.h" instead -#endif -#include "Gem/Event.h" diff --git a/Gem/develop/include/Gem/Base/GemExportDef.h b/Gem/develop/include/Gem/Base/GemExportDef.h deleted file mode 100644 index 1a12ef3..0000000 --- a/Gem/develop/include/Gem/Base/GemExportDef.h +++ /dev/null @@ -1,4 +0,0 @@ -#ifdef __GNUC__ -# warning Base/GemExportDef.h is deprecated - please include "Gem/ExportDef.h" instead -#endif -#include "Gem/ExportDef.h" diff --git a/Gem/develop/include/Gem/Base/GemFuncUtil.h b/Gem/develop/include/Gem/Base/GemFuncUtil.h deleted file mode 100644 index d07c0aa..0000000 --- a/Gem/develop/include/Gem/Base/GemFuncUtil.h +++ /dev/null @@ -1,4 +0,0 @@ -#ifdef __GNUC__ -# warning GemFuncUtil.h is deprecated - please include "Utils/Functions.h" instead -#endif -#include "Utils/Functions.h" diff --git a/Gem/develop/include/Gem/Base/GemGL.h b/Gem/develop/include/Gem/Base/GemGL.h deleted file mode 100644 index 2c43655..0000000 --- a/Gem/develop/include/Gem/Base/GemGL.h +++ /dev/null @@ -1,4 +0,0 @@ -#ifdef __GNUC__ -# warning GemGL.h is deprecated - please include "Gem/GemGL.h" instead -#endif -#include "Gem/GemGL.h" diff --git a/Gem/develop/include/Gem/Base/GemGLBase.h b/Gem/develop/include/Gem/Base/GemGLBase.h deleted file mode 100644 index 6a3d319..0000000 --- a/Gem/develop/include/Gem/Base/GemGLBase.h +++ /dev/null @@ -1,23 +0,0 @@ -/* ------------------------------------------------------------------ - * GEM - Graphics Environment for Multimedia - * - * Copyright (c) 2008 zmoelnig@iem.at - * For information on usage and redistribution, and for a DISCLAIMER - * OF ALL WARRANTIES, see the file, "GEM.LICENSE.TERMS" - * - * this file has been generated... - * ------------------------------------------------------------------ - */ -#ifndef _INCLUDE__GEM_BASE_GEMGLBASE_H_ -#define _INCLUDE__GEM_BASE_GEMGLBASE_H_ - -#include "Utils/GLUtil.h" -#include "Base/GemBase.h" - -class GEM_EXTERN GemGLBase : public GemBase -{ - -}; - - -#endif /* for header file */ diff --git a/Gem/develop/include/Gem/Base/GemGLUtil.h b/Gem/develop/include/Gem/Base/GemGLUtil.h deleted file mode 100644 index da69562..0000000 --- a/Gem/develop/include/Gem/Base/GemGLUtil.h +++ /dev/null @@ -1,4 +0,0 @@ -#ifdef __GNUC__ -# warning GemGLUtil.h is deprecated - please include "Utils/GLUtil.h" instead -#endif -#include "Utils/GLUtil.h" diff --git a/Gem/develop/include/Gem/Base/GemGluObj.h b/Gem/develop/include/Gem/Base/GemGluObj.h deleted file mode 100644 index a08e33a..0000000 --- a/Gem/develop/include/Gem/Base/GemGluObj.h +++ /dev/null @@ -1,92 +0,0 @@ -/*----------------------------------------------------------------- -LOG - GEM - Graphics Environment for Multimedia - - A Glu object - - Copyright (c) 1997-2000 Mark Danks. mark@danks.org - Copyright (c) Günther Geiger. geiger@epy.co.at - Copyright (c) 2001-2011 IOhannes m zmölnig. forum::für::umläute. IEM. zmoelnig@iem.at - For information on usage and redistribution, and for a DISCLAIMER OF ALL - WARRANTIES, see the file, "GEM.LICENSE.TERMS" in this distribution. - ------------------------------------------------------------------*/ - -#ifndef _INCLUDE__GEM_BASE_GEMGLUOBJ_H_ -#define _INCLUDE__GEM_BASE_GEMGLUOBJ_H_ - -// I hate Microsoft...I shouldn't have to do this! -#ifdef _WIN32 -#include -#endif - -#include - - -#include -#ifndef M_PI -# define M_PI (3.1415926) -#endif - -#include "Base/GemShape.h" - -#ifndef GLU_SILHOUETTE -# define GLU_SILHOUETTE 0 -#endif - -/*----------------------------------------------------------------- -------------------------------------------------------------------- -CLASS - GemGluObj - - A Glu object - -DESCRIPTION - - Inlet for an int - "in2" - - "in2" - the number of slices in the object - ------------------------------------------------------------------*/ -class GEM_EXTERN GemGluObj : public GemShape -{ - public: - - ////////// - // Constructor - GemGluObj(t_floatarg size, t_floatarg slices=10.f, t_floatarg stacks=0.f); - - protected: - - ////////// - // Destructor - virtual ~GemGluObj(); - - ////////// - // The number of slices in the quadric - void numSlicesMess(int numSlices); - void numSlicesMess(int numSlices, int numStacks); - - ////////// - // The number of slices - int m_numSlices, m_numStacks; - - ////////// - t_inlet *m_sliceInlet; - - ////////// - // creation callback - static void real_obj_setupCallback(t_class *classPtr) - { GemShape::real_obj_setupCallback(classPtr); GemGluObj::obj_setupCallback(classPtr); } - - private: - - static inline GemGluObj *GetMyClass(void *data) {return((GemGluObj *)((Obj_header *)data)->data);} - - ////////// - // Static member functions - static void obj_setupCallback(t_class *classPtr); - static void numSlicesMessCallback(void *data, t_symbol*, int, t_atom*); -}; - -#endif // for header file diff --git a/Gem/develop/include/Gem/Base/GemLoaders.h b/Gem/develop/include/Gem/Base/GemLoaders.h deleted file mode 100644 index f0efbc8..0000000 --- a/Gem/develop/include/Gem/Base/GemLoaders.h +++ /dev/null @@ -1,4 +0,0 @@ -#ifdef __GNUC__ -# warning Base/GemLoaders.h is deprecated - please include "Gem/Loaders.h" instead -#endif -#include "Gem/Loaders.h" diff --git a/Gem/develop/include/Gem/Base/GemMan.h b/Gem/develop/include/Gem/Base/GemMan.h deleted file mode 100644 index ed4b9af..0000000 --- a/Gem/develop/include/Gem/Base/GemMan.h +++ /dev/null @@ -1,4 +0,0 @@ -#ifdef __GNUC__ -# warning GemMan.h is deprecated - please include "Gem/Manager.h" instead -#endif -#include "Gem/Manager.h" diff --git a/Gem/develop/include/Gem/Base/GemMath.h b/Gem/develop/include/Gem/Base/GemMath.h deleted file mode 100644 index 4a26d02..0000000 --- a/Gem/develop/include/Gem/Base/GemMath.h +++ /dev/null @@ -1,4 +0,0 @@ -#ifdef __GNUC__ -# warning GemMath.h is deprecated - please include "Utils/Math.h" instead -#endif -#include "Utils/Math.h" diff --git a/Gem/develop/include/Gem/Base/GemPBuffer.h b/Gem/develop/include/Gem/Base/GemPBuffer.h deleted file mode 100644 index 46b1229..0000000 --- a/Gem/develop/include/Gem/Base/GemPBuffer.h +++ /dev/null @@ -1,4 +0,0 @@ -#ifdef __GNUC__ -# warning GemPBuffer.h is deprecated - please include "Gem/PBuffer.h" instead -#endif -#include "Gem/PBuffer.h" diff --git a/Gem/develop/include/Gem/Base/GemPathBase.h b/Gem/develop/include/Gem/Base/GemPathBase.h deleted file mode 100644 index 2d24619..0000000 --- a/Gem/develop/include/Gem/Base/GemPathBase.h +++ /dev/null @@ -1,71 +0,0 @@ -/*----------------------------------------------------------------- -LOG - GEM - Graphics Environment for Multimedia - - Base class for paths - - Copyright (c) 1997-1999 Mark Danks. mark@danks.org - Copyright (c) Günther Geiger. geiger@epy.co.at - Copyright (c) 2001-2011 IOhannes m zmölnig. forum::für::umläute. IEM. zmoelnig@iem.at - For information on usage and redistribution, and for a DISCLAIMER OF ALL - WARRANTIES, see the file, "GEM.LICENSE.TERMS" in this distribution. - ------------------------------------------------------------------*/ - -#ifndef _INCLUDE__GEM_BASE_GEMPATHBASE_H_ -#define _INCLUDE__GEM_BASE_GEMPATHBASE_H_ - -#include "Base/CPPExtern.h" - -/*----------------------------------------------------------------- -------------------------------------------------------------------- -CLASS - GemPathBase - - -DESCRIPTION - - ------------------------------------------------------------------*/ -class GEM_EXTERN GemPathBase : public CPPExtern -{ - CPPEXTERN_HEADER(GemPathBase, CPPExtern); - - public: - - ////////// - // Constructor - GemPathBase(int argc, t_atom *argv); - - protected: - - ////////// - // Destructor - virtual ~GemPathBase(); - - ////////// - // When an open is received - virtual void openMess(t_symbol *arrayname); - - ////////// - // When a float val is received - virtual void floatMess(t_float val); - - /////////// - // do the actual interpolation - virtual void lookupFunc(t_float x, t_float *ret, int numDimen, int npnts, t_float *pnts) = 0; - - ////////// - // The number of dimensions - int m_numDimens; - - ////////// - // The array - t_garray *m_array; - - ////////// - // The outlet - t_outlet *m_out1; -}; - -#endif // for header file diff --git a/Gem/develop/include/Gem/Base/GemPixConvert.h b/Gem/develop/include/Gem/Base/GemPixConvert.h deleted file mode 100644 index 5a2ef0d..0000000 --- a/Gem/develop/include/Gem/Base/GemPixConvert.h +++ /dev/null @@ -1,4 +0,0 @@ -#ifdef __GNUC__ -# warning GemPixConvert.h is deprecated - please include "Gem/PixConvert.h" instead -#endif -#include "Gem/PixConvert.h" diff --git a/Gem/develop/include/Gem/Base/GemPixDualObj.h b/Gem/develop/include/Gem/Base/GemPixDualObj.h deleted file mode 100644 index 88ffabc..0000000 --- a/Gem/develop/include/Gem/Base/GemPixDualObj.h +++ /dev/null @@ -1,190 +0,0 @@ -/*----------------------------------------------------------------- -LOG - GEM - Graphics Environment for Multimedia - - An object which accepts two pixes. - - Copyright (c) 1997-1999 Mark Danks. mark@danks.org - Copyright (c) Günther Geiger. geiger@epy.co.at - Copyright (c) 2001-2011 IOhannes m zmölnig. forum::für::umläute. IEM. zmoelnig@iem.at - Copyright (c) 2002 James Tittle & Chris Clepper - For information on usage and redistribution, and for a DISCLAIMER OF ALL - WARRANTIES, see the file, "GEM.LICENSE.TERMS" in this distribution. - ------------------------------------------------------------------*/ - -#ifndef _INCLUDE__GEM_BASE_GEMPIXDUALOBJ_H_ -#define _INCLUDE__GEM_BASE_GEMPIXDUALOBJ_H_ - -#define NEW_DUAL_PIX - -#include "Base/GemPixObj.h" - -/*----------------------------------------------------------------- -------------------------------------------------------------------- -CLASS - GemPixDualObj - - An object which accepts two pixes. - -DESCRIPTION - - Inlet for a gem - "gem_right" - - "gem_right" - The second gem list - ------------------------------------------------------------------*/ -class GEM_EXTERN GemPixDualObj : public GemPixObj -{ - public: - - ////////// - // Constructor - GemPixDualObj(); - - protected: - - ////////// - // Destructor - virtual ~GemPixDualObj(); - - void render(GemState *state); - - ////////// - // Derived classes should NOT override this! - // This makes sure that the images are the same size. - // This calls the other process functions based on the input images. - virtual void processImage(imageStruct &image); - -#ifndef NEW_DUAL_PIX - ////////// - // The derived class HAS override this. - // This is called whenever a new image comes through and - // both of the image structs are RGBA - virtual void processDualImage(imageStruct &image, imageStruct &right) = 0; - - ////////// - // The derived class CAN override this. - // This is called whenever a new image comes through and both - // of the image structs are gray8. - // The default behavior is to output an error. - virtual void processDualGray(imageStruct &image, imageStruct &right); - - ////////// - // The derived class CAN override this. - // This is called whenever a new image comes through and - // the left image is an RGBA while the right is a gray8. - // The default behavior is to output an error. - virtual void processRightGray(imageStruct &image, imageStruct &right); - - ////////// - // The derived class CAN override this. - // This is called whenever a new image comes through and - // the left image is a gray8, the right is an RGBA - // The default behavior is to output an error. - virtual void processLeftGray(imageStruct &image, imageStruct &right); - - ////////// - // The derived class CAN override this. - // This is called whenever a new image comes through and both - // of the image structs are YUV. - // The default behavior is to output an error. - virtual void processDualYUV(imageStruct &image, imageStruct &right); - - ////////// - // The derived class CAN override this. - // This is called whenever a new image comes through and - // the left image is an RGBA while the right is a YUV. - // The default behavior is to output an error. - virtual void processRightYUV(imageStruct &image, imageStruct &right); - - ////////// - // The derived class CAN override this. - // This is called whenever a new image comes through and - // the left image is a YUV, the right is an RGBA - // The default behavior is to output an error. - virtual void processLeftYUV(imageStruct &image, imageStruct &right); -#else - ////////// - // The derived class SHOULD override this, if it provides a method for "all" formats - virtual void processDualImage(imageStruct &left, imageStruct &right); - // Here come the more specific dual-processors - // The derived class SHOULD override these as needed - - /* for simplicity this is done via preprocessor defines: - * the functions defined are like : - ** processRGBA_RGBA(left, right); - */ - -#define PROCESS_DUALIMAGE(CS1, CS2) \ - virtual void process##CS1 ##_##CS2 (imageStruct &left, imageStruct &right){processDualImage(left, right);} - PROCESS_DUALIMAGE(RGBA, RGBA); - PROCESS_DUALIMAGE(RGBA, Gray); - PROCESS_DUALIMAGE(RGBA, YUV ); - - PROCESS_DUALIMAGE(Gray, RGBA); - PROCESS_DUALIMAGE(Gray, Gray); - PROCESS_DUALIMAGE(Gray, YUV ); - - PROCESS_DUALIMAGE(YUV, RGBA); - PROCESS_DUALIMAGE(YUV, Gray); - PROCESS_DUALIMAGE(YUV, YUV ); -#undef PROCESS_DUALIMAGE - - /* for simplicity this is done via preprocessor defines: - * the functions defined are like : - ** processRGBA_Altivec(left, right); - */ -#define PROCESS_DUALIMAGE_SIMD(CS1, CS2,_SIMD_EXT) \ - virtual void process##CS1 ##_##_SIMD_EXT (imageStruct &left, imageStruct &right){ \ - process##CS1 ##_##CS2 (left, right);} - - PROCESS_DUALIMAGE_SIMD(RGBA, RGBA, MMX); - PROCESS_DUALIMAGE_SIMD(RGBA, MMX , SSE2); - PROCESS_DUALIMAGE_SIMD(RGBA, RGBA, Altivec); - - PROCESS_DUALIMAGE_SIMD(YUV , YUV , MMX); - PROCESS_DUALIMAGE_SIMD(YUV , MMX , SSE2); - PROCESS_DUALIMAGE_SIMD(YUV , YUV , Altivec); - - PROCESS_DUALIMAGE_SIMD(Gray, Gray, MMX); - PROCESS_DUALIMAGE_SIMD(Gray, MMX , SSE2); - PROCESS_DUALIMAGE_SIMD(Gray, Gray, Altivec); -#undef PROCESS_DUALIMAGE_SIMD - -#endif - ////////// - virtual void postrender(GemState *); - virtual void stopRendering(); - virtual void rightstopRendering() { ; } - virtual void rightRender(GemState *state); - virtual void rightPostrender(GemState *) { ; } - virtual void rightStoprender() { ; } - - ////////// - GemCache *m_cacheRight; - - ////////// - pixBlock *m_pixRight; - - int m_pixRightValid; - int org_pixRightValid; - - ////////// - t_inlet *m_inlet; - - ////////// - // creation callback - static void real_obj_setupCallback(t_class *classPtr) - { GemPixObj::real_obj_setupCallback(classPtr); GemPixDualObj::obj_setupCallback(classPtr); } - - private: - - static inline GemPixDualObj *GetMyClass(void *data) {return((GemPixDualObj *)((Obj_header *)data)->data);} - - ////////// - // Static member functions - static void obj_setupCallback(t_class *classPtr); - static void gem_rightMessCallback(void *x, t_symbol *s, int argc, t_atom *argv); -}; -#endif // for header file diff --git a/Gem/develop/include/Gem/Base/GemPixImageLoad.h b/Gem/develop/include/Gem/Base/GemPixImageLoad.h deleted file mode 100644 index f7aefce..0000000 --- a/Gem/develop/include/Gem/Base/GemPixImageLoad.h +++ /dev/null @@ -1,4 +0,0 @@ -#ifdef __GNUC__ -# warning GemPixImageLoad.h is deprecated - please include "Gem/ImageIO.h" instead -#endif -#include "Gem/ImageIO.h" diff --git a/Gem/develop/include/Gem/Base/GemPixImageSave.h b/Gem/develop/include/Gem/Base/GemPixImageSave.h deleted file mode 100644 index f5f3bf7..0000000 --- a/Gem/develop/include/Gem/Base/GemPixImageSave.h +++ /dev/null @@ -1,4 +0,0 @@ -#ifdef __GNUC__ -# warning GemPixImageSave.h is deprecated - please include "Gem/ImageIO.h" instead -#endif -#include "Gem/ImageIO.h" diff --git a/Gem/develop/include/Gem/Base/GemPixObj.h b/Gem/develop/include/Gem/Base/GemPixObj.h deleted file mode 100644 index b964ad3..0000000 --- a/Gem/develop/include/Gem/Base/GemPixObj.h +++ /dev/null @@ -1,149 +0,0 @@ -/*----------------------------------------------------------------- -LOG - GEM - Graphics Environment for Multimedia - - Base class for pix class gem objects - - Copyright (c) 1997-1999 Mark Danks. mark@danks.org - Copyright (c) Günther Geiger. geiger@epy.co.at - Copyright (c) 2001-2011 IOhannes m zmölnig. forum::für::umläute. IEM. zmoelnig@iem.at - For information on usage and redistribution, and for a DISCLAIMER OF ALL - WARRANTIES, see the file, "GEM.LICENSE.TERMS" in this distribution. - ------------------------------------------------------------------*/ - -#ifndef _INCLUDE__GEM_BASE_GEMPIXOBJ_H_ -#define _INCLUDE__GEM_BASE_GEMPIXOBJ_H_ - -#include "Base/GemBase.h" -#include "Gem/Image.h" -#include "Gem/Rectangle.h" -#include "stdlib.h" -#include "string.h" -#include "math.h" - -/*----------------------------------------------------------------- -------------------------------------------------------------------- -CLASS - GemPixObj - - Base class for pix class gem objects - -DESCRIPTION - ------------------------------------------------------------------*/ -class GEM_EXTERN GemPixObj : public GemBase -{ - public: - - ////////// - // Constructor - GemPixObj(); - - protected: - - ////////// - // Destructor - virtual ~GemPixObj() { } - - ////////// - // The derived class should override this if it provides - // processing independent of the image.format - // This is called whenever a new image comes through. - // The default is to output an error - virtual void processImage(imageStruct &image); - - ////////// - // The derived class should override this. - // This is called whenever a new RGB image comes through. - // The default is to call processImage(). - virtual void processRGBImage(imageStruct &image); - - ////////// - // The derived class should override this. - // This is called whenever a new RGBA image comes through. - // The default is to call processImage(). - virtual void processRGBAImage(imageStruct &image); - // SIMD-optimized functions: by default the non-optimized function is called - virtual void processRGBAMMX(imageStruct &image); - virtual void processRGBASSE2(imageStruct &image); - virtual void processRGBAAltivec(imageStruct &image); - - ////////// - // The derived class should override this. - // This is called whenever a new gray8 image comes through. - // The default is to call processImage(). - virtual void processGrayImage(imageStruct &image); - // SIMD-optimized functions: by default the non-optimized function is called - virtual void processGrayMMX(imageStruct &image); - virtual void processGraySSE2(imageStruct &image); - virtual void processGrayAltivec(imageStruct &image); - - ////////// - // The derived class should override this. - // This is called whenever a new YUV422 image comes through. - // The default is to call processImage(). - virtual void processYUVImage(imageStruct &image); - // SIMD-optimized functions: by default the non-optimized function is called - virtual void processYUVMMX(imageStruct &image); - virtual void processYUVSSE2(imageStruct &image); - virtual void processYUVAltivec(imageStruct &image); - - ////////// - // If the derived class needs the image resent. - // This sets the dirty bit on the pixBlock. - void setPixModified(); - - ////////// - // Turn on/off processing - void processOnOff(int on); - - ////////// - // the pixBlock-cache - pixBlock cachedPixBlock; - pixBlock *orgPixBlock; - - ////////// - int m_processOnOff; - int m_simd; - - ////////// - // handle ROI - gem::Rectangle m_roi; - bool m_doROI; - - ////////// - // creation callback - static void real_obj_setupCallback(t_class *classPtr) { - GemBase::real_obj_setupCallback(classPtr); - GemPixObj::obj_setupCallback(classPtr); - } - - ////////// - // The derived class should NOT override this unless they have some - // very special behavior. - // Do the rendering, which calls processImage or processGrayImage, etc... - // save the image-information - virtual void render(GemState *state); - // turn the pointer back to the old data after rendering - virtual void postrender(GemState *state); - - void startRendering(void) { - //post("start rendering"); - setPixModified(); - } - - private: - - static inline GemPixObj *GetMyClass(void *data) {return((GemPixObj *)((Obj_header *)data)->data);} - - ////////// - // static member functions - static void obj_setupCallback(t_class *classPtr); - - protected: - virtual void SIMD(int); -}; - - -#endif // for header file diff --git a/Gem/develop/include/Gem/Base/GemPixPete.h b/Gem/develop/include/Gem/Base/GemPixPete.h deleted file mode 100644 index 053ad9c..0000000 --- a/Gem/develop/include/Gem/Base/GemPixPete.h +++ /dev/null @@ -1,4 +0,0 @@ -#ifdef __GNUC__ -# warning GemPixPete.h is deprecated - please include "Utils/PixPete.h" instead -#endif -#include "Utils/PixPete.h" diff --git a/Gem/develop/include/Gem/Base/GemPixUtil.h b/Gem/develop/include/Gem/Base/GemPixUtil.h deleted file mode 100644 index 628a165..0000000 --- a/Gem/develop/include/Gem/Base/GemPixUtil.h +++ /dev/null @@ -1,4 +0,0 @@ -#ifdef __GNUC__ -# warning GemPixUtil.h is deprecated - please include "Gem/Image.h" instead -#endif -#include "Gem/Image.h" diff --git a/Gem/develop/include/Gem/Base/GemSIMD.h b/Gem/develop/include/Gem/Base/GemSIMD.h deleted file mode 100644 index eed6c17..0000000 --- a/Gem/develop/include/Gem/Base/GemSIMD.h +++ /dev/null @@ -1,4 +0,0 @@ -#ifdef __GNUC__ -# warning GemSIMD.h is deprecated - please include "Utils/SIMD.h" instead -#endif -#include "Utils/SIMD.h" diff --git a/Gem/develop/include/Gem/Base/GemShape.h b/Gem/develop/include/Gem/Base/GemShape.h deleted file mode 100644 index 2878156..0000000 --- a/Gem/develop/include/Gem/Base/GemShape.h +++ /dev/null @@ -1,141 +0,0 @@ -/*----------------------------------------------------------------- - LOG - GEM - Graphics Environment for Multimedia - - Base class for shapes - - Copyright (c) 1997-1999 Mark Danks. mark@danks.org - Copyright (c) Günther Geiger. geiger@epy.co.at - Copyright (c) 2001-2011 IOhannes m zmölnig. forum::für::umläute. IEM. zmoelnig@iem.at - For information on usage and redistribution, and for a DISCLAIMER OF ALL - WARRANTIES, see the file, "GEM.LICENSE.TERMS" in this distribution. - - -----------------------------------------------------------------*/ - -#ifndef _INCLUDE__GEM_BASE_GEMSHAPE_H_ -#define _INCLUDE__GEM_BASE_GEMSHAPE_H_ - -#include "Base/GemBase.h" -#include -/*----------------------------------------------------------------- - ------------------------------------------------------------------- - CLASS - GemShape - - Base class for shapes - - DESCRIPTION - - Inlet for a float - "ft1" - - "ft1" - the size of the shape - "draw" - the drawing style - "width" - the line width when drawing with lines - - -----------------------------------------------------------------*/ -class TexCoord; -class GEM_EXTERN GemShape : public GemBase -{ - public: - - ////////// - // Constructor - // [in] size - A size of 0. means to just use the default (ie, 1.) - GemShape(t_floatarg size); - GemShape(); - - protected: - - ////////// - // Destructor - virtual ~GemShape(); - - //----------------------------------- - // GROUP: Access functions - //----------------------------------- - - ////////// - // The width of the lines in line draw mode - void linewidthMess(float linewidth); - - ////////// - // The size of the object - void sizeMess(float size); - - ////////// - // How the object should be drawn - virtual void typeMess(t_symbol *type); - - //----------------------------------- - // GROUP: Utility functions - //----------------------------------- - - void SetVertex(GemState* state,float x, float y, float z, - float tx, float ty, - int curCoord); - - void SetVertex(GemState* state,float x, float y, float z, - float s, float t, float r, float q, - int curCoord); - - //----------------------------------- - // GROUP: Member variables - //----------------------------------- - - ////////// - // The line width for GL_LINE mode - GLfloat m_linewidth; - - ////////// - // The size of the object - GLfloat m_size; - - ////////// - // The drawing style (GL_LINE, GL_POLYGON, etc) - GLenum m_drawType; - - ////////// - // do we want blending? - GLboolean m_blend; - void blendMess(float blend); - - - //////// - // override this memberfunction to automatically enable softblended rendering,... - virtual void renderShape(GemState *state) {;} - - // OR - // override this memberfunction if you don't want softblending - virtual void render(GemState *state); - - - ////////// - // The size inlet - t_inlet *m_inlet; - - //----------------------------------- - // GROUP: Setup functions - //----------------------------------- - - ////////// - // creation callback - static void real_obj_setupCallback(t_class *classPtr) - { GemBase::real_obj_setupCallback(classPtr); GemShape::obj_setupCallback(classPtr); } - - private: - - static inline GemShape *GetMyClass(void *data) {return((GemShape *)((Obj_header *)data)->data);} - - ////////// - // static member functions - static void obj_setupCallback(t_class *classPtr); - - protected: - int m_texType, m_texNum; - TexCoord*m_texCoords; - bool m_lighting; - - std::mapm_drawTypes; -}; - -#endif // for header file diff --git a/Gem/develop/include/Gem/Base/GemState.h b/Gem/develop/include/Gem/Base/GemState.h deleted file mode 100644 index d8ea046..0000000 --- a/Gem/develop/include/Gem/Base/GemState.h +++ /dev/null @@ -1,4 +0,0 @@ -#ifdef __GNUC__ -# warning GemState.h is deprecated - please include "Gem/State.h" instead -#endif -#include "Gem/State.h" diff --git a/Gem/develop/include/Gem/Base/GemVector.h b/Gem/develop/include/Gem/Base/GemVector.h deleted file mode 100644 index a235559..0000000 --- a/Gem/develop/include/Gem/Base/GemVector.h +++ /dev/null @@ -1,4 +0,0 @@ -#ifdef __GNUC__ -# warning GemVector.h is deprecated - please include "Utils/Vector.h" instead -#endif -#include "Utils/Vector.h" diff --git a/Gem/develop/include/Gem/Base/GemVersion.h b/Gem/develop/include/Gem/Base/GemVersion.h deleted file mode 100644 index aec3de0..0000000 --- a/Gem/develop/include/Gem/Base/GemVersion.h +++ /dev/null @@ -1,4 +0,0 @@ -#ifdef __GNUC__ -# warning Base/GemVersion.h is deprecated - please include "Gem/Version.h" instead -#endif -#include "Gem/Version.h" diff --git a/Gem/develop/include/Gem/Base/GemWindow.h b/Gem/develop/include/Gem/Base/GemWindow.h deleted file mode 100644 index c5105c4..0000000 --- a/Gem/develop/include/Gem/Base/GemWindow.h +++ /dev/null @@ -1,211 +0,0 @@ -/*----------------------------------------------------------------- -LOG - GEM - Graphics Environment for Multimedia - - a window class to render to - - Copyright (c) 2009-2011 IOhannes m zmölnig. forum::für::umläute. IEM. zmoelnig@iem.at - For information on usage and redistribution, and for a DISCLAIMER OF ALL - WARRANTIES, see the file, "GEM.LICENSE.TERMS" in this distribution. - ------------------------------------------------------------------*/ - -#ifndef _INCLUDE__GEM_BASE_GEMWINDOW_H_ -#define _INCLUDE__GEM_BASE_GEMWINDOW_H_ - -#include "Gem/GemGL.h" -#include "Base/CPPExtern.h" - -#include -/*----------------------------------------------------------------- -------------------------------------------------------------------- -CLASS - GemWindow - - a window - -DESCRIPTION - ------------------------------------------------------------------*/ -namespace gem { - class Context; -}; - -class GEM_EXTERN GemWindow : public CPPExtern -{ - CPPEXTERN_HEADER(GemWindow, CPPExtern); - - private: - class PIMPL; - PIMPL*m_pimpl; - - public: - - ////////// - // Constructor - GemWindow(void); - - ////////// - // Destructor - virtual ~GemWindow(void); - - public: - /* OUTPUT */ - - /* an outlet to propagate information to the patch... mainly callbacks from the context */ - /* LATER think about detaching the output from the stack, so we can e.g. destroy a window from a mouse-callback */ - void info(std::vector); - void info(t_symbol*s, int, t_atom*); - void info(std::string); - void info(std::string, t_float); - void info(std::string, int i); - void info(std::string, std::string); - - /* tell downstream objects to render */ - void bang(void); - - /* mouse movement */ - void motion(int devId, int x, int y); - /* mouse buttons */ - void button(int devId, int id, int state); - /* mouse entering window */ - void entry(int devId, int state); - /* keyboard buttons */ - void key(int devId, std::string, int, int state); - - /* window resize/move */ - void dimension(unsigned int, unsigned int); - void position (int, int); - - /* INPUT */ - - /* create a new context */ - static gem::Context*createContext(void); - /* destroy a given context; - * @returns NULL - */ - static gem::Context*destroyContext(gem::Context*); - - /* this MUST be called from the derived classes - * as it will eventually establish a new GemContext (if m_context is non-NULL) - * if you want to share GemContext's you MUST call - * GemWindow::createContext() yourself and set m_context to the result - * - * if false is returned, you should not continue - */ - bool createGemWindow(void); - /* create a new window - * make sure that this calls the parent's createContext() method - */ - virtual bool create(void) = 0; - - /* destroy an established context+infrastructuure * - * make sure that this get's called from your destroy() implementation - */ - void destroyGemWindow(); - /* create the current window - * make sure to call GemWindow::destroyGemWindow() - */ - virtual void destroy(void) = 0; - - /* make the object's context (window,...) the current context - * this is virtual, so objects can add their own code - * note however, that they should also call this (parent's) function within - * typically implementations look like this: - * bool ::makeCurrent(void) { - * // do your own stuff - * - * is false is returned, do not attempt to use it (e.g. draw into it) - */ - virtual bool makeCurrent(void) = 0; - - /* - * make the GemWindow current (reset stacks), switch multiContext - */ - bool pushContext(void); - /* - * make uncurrent - */ - bool popContext (void); - - /* swap back/front buffer - */ - virtual void swapBuffers(void) = 0; - - /* dispatch messages from the window - * this might get called more often than the render-cycle - * it might also be called automatically as soon as the window - * is create()ed (and until the window is destroy()ed) - */ - virtual void dispatch(void); - - /* render to this window - * the default implementation calls: - * if(!makeCurrent())return; - * if(!pushContext())return; - * bang(); - * if(m_buffer==2)swap(); - * popContext(); - * but you can override this, if you want to - */ - virtual void render(void); - - /* set/get the dimension of the context - * setting is done by supplying arguments to the method; - * querying is done by supplying NO arguments - * this should be kept throughout - */ - virtual void dimensionsMess(unsigned int width, unsigned int height) = 0; - - - // common property setters - // by default they will simply set the corresponding values (below in the protected section) - // to whatever argument is given them - // so you can use these values when creating the window - // however, if you need to take immediate action (e.g. because you can), you ought to override these functions - - /* render context (pre creation) */ - virtual void bufferMess(int buf); - virtual void fsaaMess(int value); - - /* window decoration (pre creation) */ - virtual void titleMess(std::string); - virtual void borderMess(bool on); - - virtual void fullscreenMess(int on); - virtual void offsetMess(int x, int y); - - /* creation/destruction */ - virtual void createMess(std::string); - virtual void destroyMess(void); - - /* post creation */ - virtual void cursorMess(bool on); - - /* print some info */ - virtual void printMess(void); - - /* fallback callback */ - virtual void anyMess(t_symbol*s, int argc, t_atom*argv); - - protected: - unsigned int m_width, m_height; - - // common properties of GemWindow's - // you can safely ignore these, if they mean nothing to you - // however, if they do mean something to you, it would be good if you used these - int m_xoffset, m_yoffset; - bool m_border; - int m_fullscreen; - - unsigned int m_buffer; - std::string m_title; - bool m_cursor; - int m_fsaa; - - gem::Context* m_context; -}; - - - -#endif // for header file diff --git a/Gem/develop/include/Gem/Base/Matrix.h b/Gem/develop/include/Gem/Base/Matrix.h deleted file mode 100644 index cf8c838..0000000 --- a/Gem/develop/include/Gem/Base/Matrix.h +++ /dev/null @@ -1,4 +0,0 @@ -#ifdef __GNUC__ -# warning Matrix.h is deprecated - please include "Utils/Matrix.h" instead -#endif -#include "Utils/Matrix.h" diff --git a/Gem/develop/include/Gem/Base/TextBase.h b/Gem/develop/include/Gem/Base/TextBase.h deleted file mode 100644 index f65204a..0000000 --- a/Gem/develop/include/Gem/Base/TextBase.h +++ /dev/null @@ -1,245 +0,0 @@ -/*----------------------------------------------------------------- - LOG - GEM - Graphics Environment for Multimedia - - A text - - Copyright (c) 1997-1999 Mark Danks. mark@danks.org - Copyright (c) Günther Geiger. geiger@epy.co.at - Copyright (c) 2001-2011 IOhannes m zmölnig. forum::für::umläute. IEM. zmoelnig@iem.at - Copyright (c) 2005 Georg Holzmann - For information on usage and redistribution, and for a DISCLAIMER OF ALL - WARRANTIES, see the file, "GEM.LICENSE.TERMS" in this distribution. - - -----------------------------------------------------------------*/ - -#ifndef _INCLUDE__GEM_BASE_TEXTBASE_H_ -#define _INCLUDE__GEM_BASE_TEXTBASE_H_ - - -#ifdef _WIN32 -# pragma warning( disable : 4786 ) -# pragma warning( disable : 4788 ) -#endif - -#include "Gem/GemConfig.h" - -#include "RTE/Outlet.h" -#include "Base/GemBase.h" - -#include -#include - -#ifdef FTGL -# define FONT_SCALE 0.2/3.0 -# ifdef HAVE_FTGL_FTGL_H -# include "FTGL/ftgl.h" -# else -# include "FTFont.h" -# endif -#else -# define FONT_SCALE 1.0 -#endif - -using std::vector; -using std::string; -using std::wstring; - -/*----------------------------------------------------------------- - ------------------------------------------------------------------- - CLASS - TextBase - - Base class for text objects - - DESCRIPTION - - "ft1" - The font size - "text" - The text to draw - - -----------------------------------------------------------------*/ -class GEM_EXTERN TextBase : public GemBase -{ - CPPEXTERN_HEADER(TextBase, GemBase); - - public: - - ////////// - // Constructor with args - TextBase(int argc, t_atom *argv); - - - protected: - - ////////// - // Destructor - virtual ~TextBase(); - - ////////// - // Do the rendering - virtual void render(GemState*); - - ////////// - // break a string according to '\n' - virtual void breakLine(wstring line); - - //-- moocow - ////////// - // Set the text string from an ASCII list - virtual void stringMess(int argc, t_atom *argv); - void stringMess(t_symbol*, int argc, t_atom*argv) { stringMess(argc, argv); } - //-- /moocow - - ////////// - // Set the text string - virtual void textMess(int argc, t_atom *argv); - void textMess(t_symbol*, int argc, t_atom*argv) { textMess(argc, argv); } - - ////////// - // The font to use - virtual void fontNameMess(const std::string filename); - - ////////// - // set line distance - virtual void linedistMess(float dist); - - ////////// - // Set the font size - virtual void setFontSize(float size); - virtual void setFontSize(); - - ////////// - // Set the precision for rendering - virtual void setPrecision(float prec); - - ////////// - // The different types of justification - enum JustifyWidth { LEFT, RIGHT, CENTER, BASEW }; - enum JustifyHeight { BOTTOM, TOP, MIDDLE, BASEH }; - enum JustifyDepth { FRONT, BACK, HALFWAY, BASED }; - - ////////// - // Set the justification - virtual void setJustification(JustifyWidth wType); - virtual void setJustification(JustifyWidth wType, JustifyHeight hType); - virtual void setJustification(JustifyWidth wType, JustifyHeight hType, JustifyDepth dType); - - typedef struct Justification_ { - float width; - float height; - float depth; - float scale; - } Justification; - ////////// - // do the justification - // x1,...,z2 just defines the bounding box of the rendered string. - // y_offset is the offset of the current line - virtual Justification justifyFont(float x1, float y1, float z1, - float x2, float y2, float z2, float y_offset=0); - - - //----------------------------------- - // GROUP: Member variables - //----------------------------------- - - ////////// - // The text to display - // (one entry for each line) - vector m_theText; - - ////////// - // distance between the lines - // (1 = 1 line, 0.5 = 0.5 lines, ...) - float m_dist; - - ////////// - // vector with the offset - // offset there individual lines - vector m_lineDist; - - ////////// - // Do we have a valid font? - int m_valid; - - ////////// - // The font fize - float m_fontSize; - - ////////// - // The font depth (only for extruded fonts) - float m_fontDepth; - - ////////// - // The rendering precision - float m_precision; - - ////////// - // The width justification - JustifyWidth m_widthJus; - - ////////// - // The height justification - JustifyHeight m_heightJus; - - ////////// - // The depth justification - JustifyDepth m_depthJus; - - ////////// - // The inlet - t_inlet *m_inlet; - - - ////////// - // The default font name - static std::string DEFAULT_FONT; - - ////////// - // get the bounding-box for the current text/font/... - void getBBox(float&x0,float&y0,float&z0, float&x1,float&y1,float&z1); - ////////// - // output information about the current font/text - // including the bbox - void fontInfo(void); - // an outlet to send font/text/...-info back to the patch - gem::RTE::Outlet m_infoOut; - - - ////////// - // The font structure -#ifdef FTGL - FTFont *m_font; - /* this should delete (m_font) if it is notnull and recreate it. - * a pointer to the new structure is returned (and is set to m_font). - * if creation fails, the font is cleaned-up and NULL is returned - */ - virtual FTFont* makeFont(const char*fontname)=0; - - /* this is just handy to reload a font */ - t_symbol* m_fontname; - /* on starting to render, we reload the font, to make sure it is there - * this rids us of having to reload the font by hand every time the rendering is restarted - */ - virtual void startRendering(void); - - /* render one line of the text */ - virtual void renderLine(const char*line,float dist); - virtual void renderLine(const wchar_t*line,float dist); -#endif - - private: - - /////////// - // helpers: - - /////////// - // helper to make the - // line distance vector - void makeLineDist(); - - ////////// - // Static member functions - static void justifyMessCallback(void *data, t_symbol *, int, t_atom*); -}; - -#endif // for header file -- cgit v1.2.1