diff --git a/libkwineffects/CMakeLists.txt b/libkwineffects/CMakeLists.txt index 53b7852ed6..3abacc8527 100644 --- a/libkwineffects/CMakeLists.txt +++ b/libkwineffects/CMakeLists.txt @@ -25,6 +25,7 @@ set(kwineffects_XCB_LIBS ) add_library(kwineffects SHARED ${kwin_EFFECTSLIB_SRCS}) +generate_export_header(kwineffects EXPORT_FILE_NAME kwineffects_export.h) target_link_libraries(kwineffects ${kwineffects_QT_LIBS} ${kwineffects_KDE_LIBS} @@ -91,6 +92,7 @@ install( FILES kwingltexture.h kwinxrenderutils.h ${CMAKE_CURRENT_BINARY_DIR}/kwinconfig.h + ${CMAKE_CURRENT_BINARY_DIR}/kwineffects_export.h DESTINATION ${INCLUDE_INSTALL_DIR} COMPONENT Devel) add_subdirectory(autotests) diff --git a/libkwineffects/kwinanimationeffect.h b/libkwineffects/kwinanimationeffect.h index 3b31562472..ea0fad1ae4 100644 --- a/libkwineffects/kwinanimationeffect.h +++ b/libkwineffects/kwinanimationeffect.h @@ -25,12 +25,13 @@ along with this program. If not, see . #include #include #include +#include namespace KWin { -class KWIN_EXPORT FPx2 { +class KWINEFFECTS_EXPORT FPx2 { public: FPx2() { f[0] = f[1] = 0.0; valid = false; } explicit FPx2(float v) { f[0] = f[1] = v; valid = true; } @@ -89,7 +90,7 @@ private: class AniData; class AnimationEffectPrivate; -class KWIN_EXPORT AnimationEffect : public Effect +class KWINEFFECTS_EXPORT AnimationEffect : public Effect { Q_OBJECT Q_ENUMS(Anchor) diff --git a/libkwineffects/kwineffects.h b/libkwineffects/kwineffects.h index 2ba8306def..e62bbca503 100644 --- a/libkwineffects/kwineffects.h +++ b/libkwineffects/kwineffects.h @@ -24,6 +24,7 @@ along with this program. If not, see . #define KWINEFFECTS_H #include +#include #include #include @@ -228,7 +229,7 @@ enum EffectFrameStyle { /** * Infinite region (i.e. a special region type saying that everything needs to be painted). */ -KWIN_EXPORT inline +KWINEFFECTS_EXPORT inline QRect infiniteRegion() { // INT_MIN / 2 because width/height is used (INT_MIN+INT_MAX==-1) @@ -300,7 +301,7 @@ QRect infiniteRegion() * * There is in general no need to call the matching doneCurrent method. **/ -class KWIN_EXPORT Effect : public QObject +class KWINEFFECTS_EXPORT Effect : public QObject { Q_OBJECT public: @@ -581,8 +582,8 @@ public Q_SLOTS: **/ #define KWIN_EFFECT( name, classname ) \ extern "C" { \ - KWIN_EXPORT Effect* effect_create_kwin4_effect_##name() { return new classname; } \ - KWIN_EXPORT int effect_version_kwin4_effect_##name() { return KWIN_EFFECT_API_VERSION; } \ + KWINEFFECTS_EXPORT Effect* effect_create_kwin4_effect_##name() { return new classname; } \ + KWINEFFECTS_EXPORT int effect_version_kwin4_effect_##name() { return KWIN_EFFECT_API_VERSION; } \ } /** @@ -591,7 +592,7 @@ public Q_SLOTS: **/ #define KWIN_EFFECT_SUPPORTED( name, function ) \ extern "C" { \ - KWIN_EXPORT bool effect_supported_kwin4_effect_##name() { return function; } \ + KWINEFFECTS_EXPORT bool effect_supported_kwin4_effect_##name() { return function; } \ } /** @@ -609,7 +610,7 @@ public Q_SLOTS: **/ #define KWIN_EFFECT_ENABLEDBYDEFAULT(name, function) \ extern "C" { \ - KWIN_EXPORT bool effect_enabledbydefault_kwin4_effect_##name() { return function; } \ + KWINEFFECTS_EXPORT bool effect_enabledbydefault_kwin4_effect_##name() { return function; } \ } /** @@ -650,7 +651,7 @@ public Q_SLOTS: * desktop or create a special input window to receive mouse and keyboard * events. **/ -class KWIN_EXPORT EffectsHandler : public QObject +class KWINEFFECTS_EXPORT EffectsHandler : public QObject { Q_OBJECT Q_PROPERTY(int currentDesktop READ currentDesktop WRITE setCurrentDesktop NOTIFY desktopChanged) @@ -1305,7 +1306,7 @@ protected: * The purpose is to hide internal data and also to serve as a single * representation for the case when Client/Unmanaged becomes Deleted. **/ -class KWIN_EXPORT EffectWindow : public QObject +class KWINEFFECTS_EXPORT EffectWindow : public QObject { Q_OBJECT Q_PROPERTY(bool alpha READ hasAlpha CONSTANT) @@ -1762,7 +1763,7 @@ public: virtual void unreferencePreviousWindowPixmap() = 0; }; -class KWIN_EXPORT EffectWindowGroup +class KWINEFFECTS_EXPORT EffectWindowGroup { public: virtual ~EffectWindowGroup(); @@ -1789,7 +1790,7 @@ struct GLVertex3D * A vertex is one position in a window. WindowQuad consists of four WindowVertex objects * and represents one part of a window. **/ -class KWIN_EXPORT WindowVertex +class KWINEFFECTS_EXPORT WindowVertex { public: WindowVertex(); @@ -1821,7 +1822,7 @@ private: * WindowQuads consists of four WindowVertex objects and represents one part of a window. */ // NOTE: This class expects the (original) vertices to be in the clockwise order starting from topleft. -class KWIN_EXPORT WindowQuad +class KWINEFFECTS_EXPORT WindowQuad { public: explicit WindowQuad(WindowQuadType type, int id = -1); @@ -1849,7 +1850,7 @@ private: int quadID; }; -class KWIN_EXPORT WindowQuadList +class KWINEFFECTS_EXPORT WindowQuadList : public QList< WindowQuad > { public: @@ -1865,7 +1866,7 @@ public: bool isTransformed() const; }; -class KWIN_EXPORT WindowPrePaintData +class KWINEFFECTS_EXPORT WindowPrePaintData { public: int mask; @@ -1890,7 +1891,7 @@ public: void setTransformed(); }; -class KWIN_EXPORT PaintData +class KWINEFFECTS_EXPORT PaintData { public: virtual ~PaintData(); @@ -2051,7 +2052,7 @@ private: PaintDataPrivate * const d; }; -class KWIN_EXPORT WindowPaintData : public PaintData +class KWINEFFECTS_EXPORT WindowPaintData : public PaintData { public: explicit WindowPaintData(EffectWindow* w); @@ -2211,7 +2212,7 @@ private: WindowPaintDataPrivate * const d; }; -class KWIN_EXPORT ScreenPaintData : public PaintData +class KWINEFFECTS_EXPORT ScreenPaintData : public PaintData { public: ScreenPaintData(); @@ -2260,7 +2261,7 @@ public: ScreenPaintData& operator=(const ScreenPaintData &rhs); }; -class KWIN_EXPORT ScreenPrePaintData +class KWINEFFECTS_EXPORT ScreenPrePaintData { public: int mask; @@ -2276,7 +2277,7 @@ public: * is destroyed, the restriction will be removed. * Note that all painting code must use paintArea() to actually perform the clipping. */ -class KWIN_EXPORT PaintClipper +class KWINEFFECTS_EXPORT PaintClipper { public: /** @@ -2315,7 +2316,7 @@ public: * } * @endcode */ - class KWIN_EXPORT Iterator + class KWINEFFECTS_EXPORT Iterator { public: Iterator(); @@ -2336,7 +2337,7 @@ private: * @internal */ template -class KWIN_EXPORT Motion +class KWINEFFECTS_EXPORT Motion { public: /** @@ -2423,7 +2424,7 @@ private: * 1D space. Although it can be used directly by itself it is * recommended to use a motion manager instead. */ -class KWIN_EXPORT Motion1D : public Motion +class KWINEFFECTS_EXPORT Motion1D : public Motion { public: explicit Motion1D(double initial = 0.0, double strength = 0.08, double smoothness = 4.0); @@ -2438,7 +2439,7 @@ public: * 2D space. Although it can be used directly by itself it is * recommended to use a motion manager instead. */ -class KWIN_EXPORT Motion2D : public Motion +class KWINEFFECTS_EXPORT Motion2D : public Motion { public: explicit Motion2D(QPointF initial = QPointF(), double strength = 0.08, double smoothness = 4.0); @@ -2458,7 +2459,7 @@ public: * are moving at any given time it can also be used as a notifier as * to see whether the effect is active or not. */ -class KWIN_EXPORT WindowMotionManager +class KWINEFFECTS_EXPORT WindowMotionManager { public: /** @@ -2613,7 +2614,7 @@ private: * another that doesn't. * It is recommended to use this class whenever displaying text. */ -class KWIN_EXPORT EffectFrame +class KWINEFFECTS_EXPORT EffectFrame { public: EffectFrame(); @@ -2718,7 +2719,7 @@ private: /** * Pointer to the global EffectsHandler object. **/ -extern KWIN_EXPORT EffectsHandler* effects; +extern KWINEFFECTS_EXPORT EffectsHandler* effects; /*************************************************************** WindowVertex diff --git a/libkwineffects/kwinglcolorcorrection.h b/libkwineffects/kwinglcolorcorrection.h index 1d7ea8de71..26d1346041 100644 --- a/libkwineffects/kwinglcolorcorrection.h +++ b/libkwineffects/kwinglcolorcorrection.h @@ -22,6 +22,7 @@ along with this program. If not, see . #define KWIN_COLOR_CORRECTION_H #include "kwinglobals.h" +#include #include @@ -41,7 +42,7 @@ class ColorCorrectionPrivate; * \warning This class is not designed to be used by effects, however * it may happen to be useful their case somehow. */ -class KWIN_EXPORT ColorCorrection : public QObject +class KWINEFFECTS_EXPORT ColorCorrection : public QObject { Q_OBJECT diff --git a/libkwineffects/kwinglplatform.h b/libkwineffects/kwinglplatform.h index 36a0e15e16..c9c7282eb8 100644 --- a/libkwineffects/kwinglplatform.h +++ b/libkwineffects/kwinglplatform.h @@ -22,6 +22,7 @@ along with this program. If not, see . #define KWIN_GLPLATFORM_H #include +#include #include #include @@ -137,7 +138,7 @@ enum ChipClass { }; -class KWIN_EXPORT GLPlatform +class KWINEFFECTS_EXPORT GLPlatform { public: ~GLPlatform(); diff --git a/libkwineffects/kwingltexture.h b/libkwineffects/kwingltexture.h index 200d24f322..dba174c05a 100644 --- a/libkwineffects/kwingltexture.h +++ b/libkwineffects/kwingltexture.h @@ -23,6 +23,7 @@ along with this program. If not, see . #define KWIN_GLTEXTURE_H #include "kwinglobals.h" +#include #include #include @@ -47,7 +48,7 @@ enum TextureCoordinateType { UnnormalizedCoordinates }; -class KWIN_EXPORT GLTexture +class KWINEFFECTS_EXPORT GLTexture { public: GLTexture(); diff --git a/libkwineffects/kwingltexture_p.h b/libkwineffects/kwingltexture_p.h index 0b57d9742b..da95dd72a1 100644 --- a/libkwineffects/kwingltexture_p.h +++ b/libkwineffects/kwingltexture_p.h @@ -24,6 +24,7 @@ along with this program. If not, see . #define KWIN_GLTEXTURE_P_H #include "kwinconfig.h" // KWIN_HAVE_OPENGL +#include #include "kwinglobals.h" #include @@ -35,7 +36,7 @@ namespace KWin // forward declarations class GLVertexBuffer; -class KWIN_EXPORT GLTexturePrivate +class KWINEFFECTS_EXPORT GLTexturePrivate : public QSharedData { public: diff --git a/libkwineffects/kwinglutils.h b/libkwineffects/kwinglutils.h index e5c6f7660f..6b16cd37c1 100644 --- a/libkwineffects/kwinglutils.h +++ b/libkwineffects/kwinglutils.h @@ -23,6 +23,7 @@ along with this program. If not, see . #define KWIN_GLUTILS_H // kwin +#include #include "kwinglutils_funcs.h" #include "kwingltexture.h" @@ -49,30 +50,30 @@ class GLVertexBufferPrivate; // Initializes GLX function pointers -void KWIN_EXPORT initGLX(); +void KWINEFFECTS_EXPORT initGLX(); // Initializes OpenGL stuff. This includes resolving function pointers as // well as checking for GL version and extensions // Note that GL context has to be created by the time this function is called -void KWIN_EXPORT initGL(OpenGLPlatformInterface platformInterface); +void KWINEFFECTS_EXPORT initGL(OpenGLPlatformInterface platformInterface); // Initializes EGL function pointers -void KWIN_EXPORT initEGL(); +void KWINEFFECTS_EXPORT initEGL(); // Cleans up all resources hold by the GL Context -void KWIN_EXPORT cleanupGL(); +void KWINEFFECTS_EXPORT cleanupGL(); // Number of supported texture units -extern KWIN_EXPORT int glTextureUnitsCount; +extern KWINEFFECTS_EXPORT int glTextureUnitsCount; -bool KWIN_EXPORT hasGLVersion(int major, int minor, int release = 0); -bool KWIN_EXPORT hasGLXVersion(int major, int minor, int release = 0); -bool KWIN_EXPORT hasEGLVersion(int major, int minor, int release = 0); +bool KWINEFFECTS_EXPORT hasGLVersion(int major, int minor, int release = 0); +bool KWINEFFECTS_EXPORT hasGLXVersion(int major, int minor, int release = 0); +bool KWINEFFECTS_EXPORT hasEGLVersion(int major, int minor, int release = 0); // use for both OpenGL and GLX extensions -bool KWIN_EXPORT hasGLExtension(const QString& extension); +bool KWINEFFECTS_EXPORT hasGLExtension(const QString& extension); // detect OpenGL error (add to various places in code to pinpoint the place) -bool KWIN_EXPORT checkGLError(const char* txt); +bool KWINEFFECTS_EXPORT checkGLError(const char* txt); -inline bool KWIN_EXPORT isPowerOfTwo(int x) +inline bool KWINEFFECTS_EXPORT isPowerOfTwo(int x) { return ((x & (x - 1)) == 0); } @@ -80,7 +81,7 @@ inline bool KWIN_EXPORT isPowerOfTwo(int x) * @return power of two integer _greater or equal to_ x. * E.g. nearestPowerOfTwo(513) = nearestPowerOfTwo(800) = 1024 **/ -int KWIN_EXPORT nearestPowerOfTwo(int x); +int KWINEFFECTS_EXPORT nearestPowerOfTwo(int x); /** * Push a new matrix on the GL matrix stack. @@ -88,7 +89,7 @@ int KWIN_EXPORT nearestPowerOfTwo(int x); * as it also handles GLES. * @since 4.7 **/ -KWIN_EXPORT void pushMatrix(); +KWINEFFECTS_EXPORT void pushMatrix(); /** * Multiplies current matrix on GL stack with @p matrix and pushes the result on the matrix stack. * This method is the same as pushMatrix followed by multiplyMatrix. @@ -99,7 +100,7 @@ KWIN_EXPORT void pushMatrix(); * @see multiplyMatrix * @since 4.7 **/ -KWIN_EXPORT void pushMatrix(const QMatrix4x4 &matrix); +KWINEFFECTS_EXPORT void pushMatrix(const QMatrix4x4 &matrix); /** * Multiplies the current matrix on GL stack with @p matrix. * In GLES this method is a noop. This method should be preferred over glMultMatrix @@ -107,7 +108,7 @@ KWIN_EXPORT void pushMatrix(const QMatrix4x4 &matrix); * @param matrix The matrix the current matrix on the stack should be multiplied with. * @since 4.7 **/ -KWIN_EXPORT void multiplyMatrix(const QMatrix4x4 &matrix); +KWINEFFECTS_EXPORT void multiplyMatrix(const QMatrix4x4 &matrix); /** * Replaces the current matrix on GL stack with @p matrix. * In GLES this method is a no-op. This method should be preferred over glLoadMatrix @@ -115,16 +116,16 @@ KWIN_EXPORT void multiplyMatrix(const QMatrix4x4 &matrix); * @param matrix The new matrix to replace the existing one on the GL stack. * @since 4.7 **/ -KWIN_EXPORT void loadMatrix(const QMatrix4x4 &matrix); +KWINEFFECTS_EXPORT void loadMatrix(const QMatrix4x4 &matrix); /** * Pops the current matrix from the GL matrix stack. * In GLES this method is a noop. This method should be preferred over glPopMatrix * as it also handles GLES. * @since 4.7 **/ -KWIN_EXPORT void popMatrix(); +KWINEFFECTS_EXPORT void popMatrix(); -class KWIN_EXPORT GLShader +class KWINEFFECTS_EXPORT GLShader { public: enum Flags { @@ -253,7 +254,7 @@ private: * @author Martin Gräßlin * @since 4.7 **/ -class KWIN_EXPORT ShaderManager +class KWINEFFECTS_EXPORT ShaderManager { public: /** @@ -437,7 +438,7 @@ private: * the code to remove checks for OpenGL 1/2. * @since 4.10 **/ -class KWIN_EXPORT ShaderBinder +class KWINEFFECTS_EXPORT ShaderBinder { public: /** @@ -515,7 +516,7 @@ GLShader* ShaderBinder::shader() * * @author Rivo Laks **/ -class KWIN_EXPORT GLRenderTarget +class KWINEFFECTS_EXPORT GLRenderTarget { public: /** @@ -627,7 +628,7 @@ struct GLVertexAttrib * @author Martin Gräßlin * @since 4.6 */ -class KWIN_EXPORT GLVertexBuffer +class KWINEFFECTS_EXPORT GLVertexBuffer { public: /** diff --git a/libkwineffects/kwinglutils_funcs.h b/libkwineffects/kwinglutils_funcs.h index d2248e52c5..ada9341f9e 100644 --- a/libkwineffects/kwinglutils_funcs.h +++ b/libkwineffects/kwinglutils_funcs.h @@ -21,16 +21,14 @@ along with this program. If not, see . #ifndef KWIN_GLUTILS_FUNCS_H #define KWIN_GLUTILS_FUNCS_H -#include +#include #include #include -#define KWIN_EXPORT KDE_EXPORT - // common functionality namespace KWin { -void KWIN_EXPORT glResolveFunctions(OpenGLPlatformInterface platformInterface); +void KWINEFFECTS_EXPORT glResolveFunctions(OpenGLPlatformInterface platformInterface); } @@ -83,7 +81,7 @@ void KWIN_EXPORT glResolveFunctions(OpenGLPlatformInterface platformInterface); namespace KWin { -void KWIN_EXPORT glxResolveFunctions(); +void KWINEFFECTS_EXPORT glxResolveFunctions(); // Defines @@ -190,42 +188,42 @@ typedef char GLchar; // finding of OpenGL extensions functions typedef void (*glXFuncPtr)(); typedef glXFuncPtr(*glXGetProcAddress_func)(const GLubyte*); -extern KWIN_EXPORT glXGetProcAddress_func glXGetProcAddress; +extern KWINEFFECTS_EXPORT glXGetProcAddress_func glXGetProcAddress; // glXQueryDrawable (added in GLX 1.3) typedef void (*glXQueryDrawable_func)(Display* dpy, GLXDrawable drawable, int attribute, unsigned int *value); -extern KWIN_EXPORT glXQueryDrawable_func glXQueryDrawable; +extern KWINEFFECTS_EXPORT glXQueryDrawable_func glXQueryDrawable; // texture_from_pixmap extension functions typedef void (*glXBindTexImageEXT_func)(Display* dpy, GLXDrawable drawable, int buffer, const int* attrib_list); typedef void (*glXReleaseTexImageEXT_func)(Display* dpy, GLXDrawable drawable, int buffer); -extern KWIN_EXPORT glXReleaseTexImageEXT_func glXReleaseTexImageEXT; -extern KWIN_EXPORT glXBindTexImageEXT_func glXBindTexImageEXT; +extern KWINEFFECTS_EXPORT glXReleaseTexImageEXT_func glXReleaseTexImageEXT; +extern KWINEFFECTS_EXPORT glXBindTexImageEXT_func glXBindTexImageEXT; // glXCopySubBufferMESA typedef void (*glXCopySubBuffer_func)(Display* , GLXDrawable, int, int, int, int); -extern KWIN_EXPORT glXCopySubBuffer_func glXCopySubBuffer; +extern KWINEFFECTS_EXPORT glXCopySubBuffer_func glXCopySubBuffer; // video_sync extension functions typedef int (*glXGetVideoSync_func)(unsigned int *count); typedef int (*glXWaitVideoSync_func)(int divisor, int remainder, unsigned int *count); typedef int (*glXSwapIntervalMESA_func)(unsigned int interval); typedef void (*glXSwapIntervalEXT_func)(Display *dpy, GLXDrawable drawable, int interval); typedef int (*glXSwapIntervalSGI_func)(int interval); -extern KWIN_EXPORT glXGetVideoSync_func glXGetVideoSync; -extern KWIN_EXPORT glXWaitVideoSync_func glXWaitVideoSync; -extern KWIN_EXPORT glXSwapIntervalMESA_func glXSwapIntervalMESA; -extern KWIN_EXPORT glXSwapIntervalEXT_func glXSwapIntervalEXT; -extern KWIN_EXPORT glXSwapIntervalSGI_func glXSwapIntervalSGI; +extern KWINEFFECTS_EXPORT glXGetVideoSync_func glXGetVideoSync; +extern KWINEFFECTS_EXPORT glXWaitVideoSync_func glXWaitVideoSync; +extern KWINEFFECTS_EXPORT glXSwapIntervalMESA_func glXSwapIntervalMESA; +extern KWINEFFECTS_EXPORT glXSwapIntervalEXT_func glXSwapIntervalEXT; +extern KWINEFFECTS_EXPORT glXSwapIntervalSGI_func glXSwapIntervalSGI; // GLX_ARB_create_context typedef GLXContext (*glXCreateContextAttribsARB_func)(Display *dpy, GLXFBConfig config, GLXContext share_context, Bool direct, const int *attrib_list); -extern KWIN_EXPORT glXCreateContextAttribsARB_func glXCreateContextAttribsARB; +extern KWINEFFECTS_EXPORT glXCreateContextAttribsARB_func glXCreateContextAttribsARB; // glActiveTexture typedef void (*glActiveTexture_func)(GLenum); -extern KWIN_EXPORT glActiveTexture_func glActiveTexture; +extern KWINEFFECTS_EXPORT glActiveTexture_func glActiveTexture; // framebuffer_object extension functions typedef GLboolean(*glIsRenderbuffer_func)(GLuint renderbuffer); typedef void (*glBindRenderbuffer_func)(GLenum target, GLuint renderbuffer); @@ -245,24 +243,24 @@ typedef void (*glFramebufferRenderbuffer_func)(GLenum target, GLenum attachment, typedef void (*glGetFramebufferAttachmentParameteriv_func)(GLenum target, GLenum attachment, GLenum pname, GLint *params); typedef void (*glGenerateMipmap_func)(GLenum target); typedef void (*glBlitFramebuffer_func)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); -extern KWIN_EXPORT glIsRenderbuffer_func glIsRenderbuffer; -extern KWIN_EXPORT glBindRenderbuffer_func glBindRenderbuffer; -extern KWIN_EXPORT glDeleteRenderbuffers_func glDeleteRenderbuffers; -extern KWIN_EXPORT glGenRenderbuffers_func glGenRenderbuffers; -extern KWIN_EXPORT glRenderbufferStorage_func glRenderbufferStorage; -extern KWIN_EXPORT glGetRenderbufferParameteriv_func glGetRenderbufferParameteriv; -extern KWIN_EXPORT glIsFramebuffer_func glIsFramebuffer; -extern KWIN_EXPORT glBindFramebuffer_func glBindFramebuffer; -extern KWIN_EXPORT glDeleteFramebuffers_func glDeleteFramebuffers; -extern KWIN_EXPORT glGenFramebuffers_func glGenFramebuffers; -extern KWIN_EXPORT glCheckFramebufferStatus_func glCheckFramebufferStatus; -extern KWIN_EXPORT glFramebufferTexture1D_func glFramebufferTexture1D; -extern KWIN_EXPORT glFramebufferTexture2D_func glFramebufferTexture2D; -extern KWIN_EXPORT glFramebufferTexture3D_func glFramebufferTexture3D; -extern KWIN_EXPORT glFramebufferRenderbuffer_func glFramebufferRenderbuffer; -extern KWIN_EXPORT glGetFramebufferAttachmentParameteriv_func glGetFramebufferAttachmentParameteriv; -extern KWIN_EXPORT glGenerateMipmap_func glGenerateMipmap; -extern KWIN_EXPORT glBlitFramebuffer_func glBlitFramebuffer; +extern KWINEFFECTS_EXPORT glIsRenderbuffer_func glIsRenderbuffer; +extern KWINEFFECTS_EXPORT glBindRenderbuffer_func glBindRenderbuffer; +extern KWINEFFECTS_EXPORT glDeleteRenderbuffers_func glDeleteRenderbuffers; +extern KWINEFFECTS_EXPORT glGenRenderbuffers_func glGenRenderbuffers; +extern KWINEFFECTS_EXPORT glRenderbufferStorage_func glRenderbufferStorage; +extern KWINEFFECTS_EXPORT glGetRenderbufferParameteriv_func glGetRenderbufferParameteriv; +extern KWINEFFECTS_EXPORT glIsFramebuffer_func glIsFramebuffer; +extern KWINEFFECTS_EXPORT glBindFramebuffer_func glBindFramebuffer; +extern KWINEFFECTS_EXPORT glDeleteFramebuffers_func glDeleteFramebuffers; +extern KWINEFFECTS_EXPORT glGenFramebuffers_func glGenFramebuffers; +extern KWINEFFECTS_EXPORT glCheckFramebufferStatus_func glCheckFramebufferStatus; +extern KWINEFFECTS_EXPORT glFramebufferTexture1D_func glFramebufferTexture1D; +extern KWINEFFECTS_EXPORT glFramebufferTexture2D_func glFramebufferTexture2D; +extern KWINEFFECTS_EXPORT glFramebufferTexture3D_func glFramebufferTexture3D; +extern KWINEFFECTS_EXPORT glFramebufferRenderbuffer_func glFramebufferRenderbuffer; +extern KWINEFFECTS_EXPORT glGetFramebufferAttachmentParameteriv_func glGetFramebufferAttachmentParameteriv; +extern KWINEFFECTS_EXPORT glGenerateMipmap_func glGenerateMipmap; +extern KWINEFFECTS_EXPORT glBlitFramebuffer_func glBlitFramebuffer; // Shader stuff typedef GLuint(*glCreateShader_func)(GLenum); typedef GLvoid(*glShaderSource_func)(GLuint, GLsizei, const GLchar**, const GLint*); @@ -300,64 +298,64 @@ typedef void (*glProgramStringARB_func)(GLenum, GLenum, GLsizei, const GLvoid*); typedef void (*glProgramLocalParameter4fARB_func)(GLenum, GLuint, GLfloat, GLfloat, GLfloat, GLfloat); typedef void (*glDeleteProgramsARB_func)(GLsizei, const GLuint*); typedef void (*glGetProgramivARB_func)(GLenum, GLenum, GLint*); -extern KWIN_EXPORT glCreateShader_func glCreateShader; -extern KWIN_EXPORT glShaderSource_func glShaderSource; -extern KWIN_EXPORT glCompileShader_func glCompileShader; -extern KWIN_EXPORT glDeleteShader_func glDeleteShader; -extern KWIN_EXPORT glCreateProgram_func glCreateProgram; -extern KWIN_EXPORT glAttachShader_func glAttachShader; -extern KWIN_EXPORT glLinkProgram_func glLinkProgram; -extern KWIN_EXPORT glUseProgram_func glUseProgram; -extern KWIN_EXPORT glDeleteProgram_func glDeleteProgram; -extern KWIN_EXPORT glGetShaderInfoLog_func glGetShaderInfoLog; -extern KWIN_EXPORT glGetProgramInfoLog_func glGetProgramInfoLog; -extern KWIN_EXPORT glGetProgramiv_func glGetProgramiv; -extern KWIN_EXPORT glGetShaderiv_func glGetShaderiv; -extern KWIN_EXPORT glUniform1f_func glUniform1f; -extern KWIN_EXPORT glUniform2f_func glUniform2f; -extern KWIN_EXPORT glUniform3f_func glUniform3f; -extern KWIN_EXPORT glUniform4f_func glUniform4f; -extern KWIN_EXPORT glUniform1i_func glUniform1i; -extern KWIN_EXPORT glUniform1fv_func glUniform1fv; -extern KWIN_EXPORT glUniform2fv_func glUniform2fv; -extern KWIN_EXPORT glUniform3fv_func glUniform3fv; -extern KWIN_EXPORT glUniform4fv_func glUniform4fv; -extern KWIN_EXPORT glGetUniformfv_func glGetUniformfv; -extern KWIN_EXPORT glUniformMatrix4fv_func glUniformMatrix4fv; -extern KWIN_EXPORT glValidateProgram_func glValidateProgram; -extern KWIN_EXPORT glGetUniformLocation_func glGetUniformLocation; -extern KWIN_EXPORT glVertexAttrib1f_func glVertexAttrib1f; -extern KWIN_EXPORT glGetAttribLocation_func glGetAttribLocation; -extern KWIN_EXPORT glBindAttribLocation_func glBindAttribLocation; -extern KWIN_EXPORT glGenProgramsARB_func glGenProgramsARB; -extern KWIN_EXPORT glBindProgramARB_func glBindProgramARB; -extern KWIN_EXPORT glProgramStringARB_func glProgramStringARB; -extern KWIN_EXPORT glProgramLocalParameter4fARB_func glProgramLocalParameter4fARB; -extern KWIN_EXPORT glDeleteProgramsARB_func glDeleteProgramsARB; -extern KWIN_EXPORT glGetProgramivARB_func glGetProgramivARB; +extern KWINEFFECTS_EXPORT glCreateShader_func glCreateShader; +extern KWINEFFECTS_EXPORT glShaderSource_func glShaderSource; +extern KWINEFFECTS_EXPORT glCompileShader_func glCompileShader; +extern KWINEFFECTS_EXPORT glDeleteShader_func glDeleteShader; +extern KWINEFFECTS_EXPORT glCreateProgram_func glCreateProgram; +extern KWINEFFECTS_EXPORT glAttachShader_func glAttachShader; +extern KWINEFFECTS_EXPORT glLinkProgram_func glLinkProgram; +extern KWINEFFECTS_EXPORT glUseProgram_func glUseProgram; +extern KWINEFFECTS_EXPORT glDeleteProgram_func glDeleteProgram; +extern KWINEFFECTS_EXPORT glGetShaderInfoLog_func glGetShaderInfoLog; +extern KWINEFFECTS_EXPORT glGetProgramInfoLog_func glGetProgramInfoLog; +extern KWINEFFECTS_EXPORT glGetProgramiv_func glGetProgramiv; +extern KWINEFFECTS_EXPORT glGetShaderiv_func glGetShaderiv; +extern KWINEFFECTS_EXPORT glUniform1f_func glUniform1f; +extern KWINEFFECTS_EXPORT glUniform2f_func glUniform2f; +extern KWINEFFECTS_EXPORT glUniform3f_func glUniform3f; +extern KWINEFFECTS_EXPORT glUniform4f_func glUniform4f; +extern KWINEFFECTS_EXPORT glUniform1i_func glUniform1i; +extern KWINEFFECTS_EXPORT glUniform1fv_func glUniform1fv; +extern KWINEFFECTS_EXPORT glUniform2fv_func glUniform2fv; +extern KWINEFFECTS_EXPORT glUniform3fv_func glUniform3fv; +extern KWINEFFECTS_EXPORT glUniform4fv_func glUniform4fv; +extern KWINEFFECTS_EXPORT glGetUniformfv_func glGetUniformfv; +extern KWINEFFECTS_EXPORT glUniformMatrix4fv_func glUniformMatrix4fv; +extern KWINEFFECTS_EXPORT glValidateProgram_func glValidateProgram; +extern KWINEFFECTS_EXPORT glGetUniformLocation_func glGetUniformLocation; +extern KWINEFFECTS_EXPORT glVertexAttrib1f_func glVertexAttrib1f; +extern KWINEFFECTS_EXPORT glGetAttribLocation_func glGetAttribLocation; +extern KWINEFFECTS_EXPORT glBindAttribLocation_func glBindAttribLocation; +extern KWINEFFECTS_EXPORT glGenProgramsARB_func glGenProgramsARB; +extern KWINEFFECTS_EXPORT glBindProgramARB_func glBindProgramARB; +extern KWINEFFECTS_EXPORT glProgramStringARB_func glProgramStringARB; +extern KWINEFFECTS_EXPORT glProgramLocalParameter4fARB_func glProgramLocalParameter4fARB; +extern KWINEFFECTS_EXPORT glDeleteProgramsARB_func glDeleteProgramsARB; +extern KWINEFFECTS_EXPORT glGetProgramivARB_func glGetProgramivARB; // vertex buffer objects typedef void (*glGenBuffers_func)(GLsizei, GLuint*); -extern KWIN_EXPORT glGenBuffers_func glGenBuffers; +extern KWINEFFECTS_EXPORT glGenBuffers_func glGenBuffers; typedef void (*glDeleteBuffers_func)(GLsizei n, const GLuint*); -extern KWIN_EXPORT glDeleteBuffers_func glDeleteBuffers; +extern KWINEFFECTS_EXPORT glDeleteBuffers_func glDeleteBuffers; typedef void (*glBindBuffer_func)(GLenum, GLuint); -extern KWIN_EXPORT glBindBuffer_func glBindBuffer; +extern KWINEFFECTS_EXPORT glBindBuffer_func glBindBuffer; typedef void (*glBufferData_func)(GLenum, GLsizeiptr, const GLvoid*, GLenum); -extern KWIN_EXPORT glBufferData_func glBufferData; +extern KWINEFFECTS_EXPORT glBufferData_func glBufferData; typedef void (*glBufferSubData_func)(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data); -extern KWIN_EXPORT glBufferSubData_func glBufferSubData; +extern KWINEFFECTS_EXPORT glBufferSubData_func glBufferSubData; typedef void (*glGetBufferSubData_func)(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data); -extern KWIN_EXPORT glGetBufferSubData_func glGetBufferSubData; +extern KWINEFFECTS_EXPORT glGetBufferSubData_func glGetBufferSubData; typedef void (*glEnableVertexAttribArray_func)(GLuint); -extern KWIN_EXPORT glEnableVertexAttribArray_func glEnableVertexAttribArray; +extern KWINEFFECTS_EXPORT glEnableVertexAttribArray_func glEnableVertexAttribArray; typedef void (*glDisableVertexAttribArray_func)(GLuint); -extern KWIN_EXPORT glDisableVertexAttribArray_func glDisableVertexAttribArray; +extern KWINEFFECTS_EXPORT glDisableVertexAttribArray_func glDisableVertexAttribArray; typedef void (*glVertexAttribPointer_func)(GLuint, GLint, GLenum, GLboolean, GLsizei, const GLvoid*); -extern KWIN_EXPORT glVertexAttribPointer_func glVertexAttribPointer; +extern KWINEFFECTS_EXPORT glVertexAttribPointer_func glVertexAttribPointer; typedef GLvoid *(*glMapBuffer_func)(GLenum target, GLenum access); -extern KWIN_EXPORT glMapBuffer_func glMapBuffer; +extern KWINEFFECTS_EXPORT glMapBuffer_func glMapBuffer; typedef GLboolean (*glUnmapBuffer_func)(GLenum target); -extern KWIN_EXPORT glUnmapBuffer_func glUnmapBuffer; +extern KWINEFFECTS_EXPORT glUnmapBuffer_func glUnmapBuffer; // GL_ARB_vertex_array_object typedef void (*glBindVertexArray_func)(GLuint array); @@ -365,10 +363,10 @@ typedef void (*glDeleteVertexArrays_func)(GLsizei n, const GLuint *arrays); typedef void (*glGenVertexArrays_func)(GLsizei n, GLuint *arrays); typedef GLboolean (*glIsVertexArray_func)(GLuint array); -extern KWIN_EXPORT glBindVertexArray_func glBindVertexArray; -extern KWIN_EXPORT glDeleteVertexArrays_func glDeleteVertexArrays; -extern KWIN_EXPORT glGenVertexArrays_func glGenVertexArrays; -extern KWIN_EXPORT glIsVertexArray_func glIsVertexArray; +extern KWINEFFECTS_EXPORT glBindVertexArray_func glBindVertexArray; +extern KWINEFFECTS_EXPORT glDeleteVertexArrays_func glDeleteVertexArrays; +extern KWINEFFECTS_EXPORT glGenVertexArrays_func glGenVertexArrays; +extern KWINEFFECTS_EXPORT glIsVertexArray_func glIsVertexArray; // GL_EXT_gpu_shader4 / GL 3.0 typedef void (*glVertexAttribI1i_func)(GLuint index, GLint x_func); @@ -405,68 +403,68 @@ typedef void (*glUniform1uiv_func)(GLint location, GLsizei count, const GLuint * typedef void (*glUniform2uiv_func)(GLint location, GLsizei count, const GLuint *value); typedef void (*glUniform3uiv_func)(GLint location, GLsizei count, const GLuint *value); -extern KWIN_EXPORT glVertexAttribI1i_func glVertexAttribI1i; -extern KWIN_EXPORT glVertexAttribI2i_func glVertexAttribI2i; -extern KWIN_EXPORT glVertexAttribI3i_func glVertexAttribI3i; -extern KWIN_EXPORT glVertexAttribI4i_func glVertexAttribI4i; -extern KWIN_EXPORT glVertexAttribI1ui_func glVertexAttribI1ui; -extern KWIN_EXPORT glVertexAttribI2ui_func glVertexAttribI2ui; -extern KWIN_EXPORT glVertexAttribI3ui_func glVertexAttribI3ui; -extern KWIN_EXPORT glVertexAttribI4ui_func glVertexAttribI4ui; -extern KWIN_EXPORT glVertexAttribI1iv_func glVertexAttribI1iv; -extern KWIN_EXPORT glVertexAttribI2iv_func glVertexAttribI2iv; -extern KWIN_EXPORT glVertexAttribI3iv_func glVertexAttribI3iv; -extern KWIN_EXPORT glVertexAttribI4iv_func glVertexAttribI4iv; -extern KWIN_EXPORT glVertexAttribI1uiv_func glVertexAttribI1uiv; -extern KWIN_EXPORT glVertexAttribI2uiv_func glVertexAttribI2uiv; -extern KWIN_EXPORT glVertexAttribI3uiv_func glVertexAttribI3uiv; -extern KWIN_EXPORT glVertexAttribI4uiv_func glVertexAttribI4uiv; -extern KWIN_EXPORT glVertexAttribI4bv_func glVertexAttribI4bv; -extern KWIN_EXPORT glVertexAttribI4sv_func glVertexAttribI4sv; -extern KWIN_EXPORT glVertexAttribI4ubv_func glVertexAttribI4ubv; -extern KWIN_EXPORT glVertexAttribI4usv_func glVertexAttribI4usv; -extern KWIN_EXPORT glVertexAttribIPointer_func glVertexAttribIPointer; -extern KWIN_EXPORT glGetVertexAttribIiv_func glGetVertexAttribIiv; -extern KWIN_EXPORT glGetVertexAttribIuiv_func glGetVertexAttribIuiv; -extern KWIN_EXPORT glGetUniformuiv_func glGetUniformuiv; -extern KWIN_EXPORT glBindFragDataLocation_func glBindFragDataLocation; -extern KWIN_EXPORT glGetFragDataLocation_func glGetFragDataLocation; -extern KWIN_EXPORT glUniform1ui_func glUniform1ui; -extern KWIN_EXPORT glUniform2ui_func glUniform2ui; -extern KWIN_EXPORT glUniform3ui_func glUniform3ui; -extern KWIN_EXPORT glUniform4ui_func glUniform4ui; -extern KWIN_EXPORT glUniform1uiv_func glUniform1uiv; -extern KWIN_EXPORT glUniform2uiv_func glUniform2uiv; -extern KWIN_EXPORT glUniform3uiv_func glUniform3uiv; +extern KWINEFFECTS_EXPORT glVertexAttribI1i_func glVertexAttribI1i; +extern KWINEFFECTS_EXPORT glVertexAttribI2i_func glVertexAttribI2i; +extern KWINEFFECTS_EXPORT glVertexAttribI3i_func glVertexAttribI3i; +extern KWINEFFECTS_EXPORT glVertexAttribI4i_func glVertexAttribI4i; +extern KWINEFFECTS_EXPORT glVertexAttribI1ui_func glVertexAttribI1ui; +extern KWINEFFECTS_EXPORT glVertexAttribI2ui_func glVertexAttribI2ui; +extern KWINEFFECTS_EXPORT glVertexAttribI3ui_func glVertexAttribI3ui; +extern KWINEFFECTS_EXPORT glVertexAttribI4ui_func glVertexAttribI4ui; +extern KWINEFFECTS_EXPORT glVertexAttribI1iv_func glVertexAttribI1iv; +extern KWINEFFECTS_EXPORT glVertexAttribI2iv_func glVertexAttribI2iv; +extern KWINEFFECTS_EXPORT glVertexAttribI3iv_func glVertexAttribI3iv; +extern KWINEFFECTS_EXPORT glVertexAttribI4iv_func glVertexAttribI4iv; +extern KWINEFFECTS_EXPORT glVertexAttribI1uiv_func glVertexAttribI1uiv; +extern KWINEFFECTS_EXPORT glVertexAttribI2uiv_func glVertexAttribI2uiv; +extern KWINEFFECTS_EXPORT glVertexAttribI3uiv_func glVertexAttribI3uiv; +extern KWINEFFECTS_EXPORT glVertexAttribI4uiv_func glVertexAttribI4uiv; +extern KWINEFFECTS_EXPORT glVertexAttribI4bv_func glVertexAttribI4bv; +extern KWINEFFECTS_EXPORT glVertexAttribI4sv_func glVertexAttribI4sv; +extern KWINEFFECTS_EXPORT glVertexAttribI4ubv_func glVertexAttribI4ubv; +extern KWINEFFECTS_EXPORT glVertexAttribI4usv_func glVertexAttribI4usv; +extern KWINEFFECTS_EXPORT glVertexAttribIPointer_func glVertexAttribIPointer; +extern KWINEFFECTS_EXPORT glGetVertexAttribIiv_func glGetVertexAttribIiv; +extern KWINEFFECTS_EXPORT glGetVertexAttribIuiv_func glGetVertexAttribIuiv; +extern KWINEFFECTS_EXPORT glGetUniformuiv_func glGetUniformuiv; +extern KWINEFFECTS_EXPORT glBindFragDataLocation_func glBindFragDataLocation; +extern KWINEFFECTS_EXPORT glGetFragDataLocation_func glGetFragDataLocation; +extern KWINEFFECTS_EXPORT glUniform1ui_func glUniform1ui; +extern KWINEFFECTS_EXPORT glUniform2ui_func glUniform2ui; +extern KWINEFFECTS_EXPORT glUniform3ui_func glUniform3ui; +extern KWINEFFECTS_EXPORT glUniform4ui_func glUniform4ui; +extern KWINEFFECTS_EXPORT glUniform1uiv_func glUniform1uiv; +extern KWINEFFECTS_EXPORT glUniform2uiv_func glUniform2uiv; +extern KWINEFFECTS_EXPORT glUniform3uiv_func glUniform3uiv; // GL_ARB_map_buffer_range typedef GLvoid* (*glMapBufferRange_func)(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access); typedef void (*glFlushMappedBufferRange_func)(GLenum target, GLintptr offset, GLsizeiptr length); -extern KWIN_EXPORT glMapBufferRange_func glMapBufferRange; -extern KWIN_EXPORT glFlushMappedBufferRange_func glFlushMappedBufferRange; +extern KWINEFFECTS_EXPORT glMapBufferRange_func glMapBufferRange; +extern KWINEFFECTS_EXPORT glFlushMappedBufferRange_func glFlushMappedBufferRange; // GL_ARB_robustness typedef GLenum (*glGetGraphicsResetStatus_func)(); typedef void (*glReadnPixels_func)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, GLvoid *data); typedef void (*glGetnUniformfv_func)(GLuint program, GLint location, GLsizei bufSize, GLfloat *params); -extern KWIN_EXPORT glGetGraphicsResetStatus_func glGetGraphicsResetStatus; -extern KWIN_EXPORT glReadnPixels_func glReadnPixels; -extern KWIN_EXPORT glGetnUniformfv_func glGetnUniformfv; +extern KWINEFFECTS_EXPORT glGetGraphicsResetStatus_func glGetGraphicsResetStatus; +extern KWINEFFECTS_EXPORT glReadnPixels_func glReadnPixels; +extern KWINEFFECTS_EXPORT glGetnUniformfv_func glGetnUniformfv; // GL_ARB_draw_elements_base_vertex typedef void (*glDrawElementsBaseVertex_func)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex); typedef void (*glDrawElementsInstancedBaseVertex_func)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex); -extern KWIN_EXPORT glDrawElementsBaseVertex_func glDrawElementsBaseVertex; -extern KWIN_EXPORT glDrawElementsInstancedBaseVertex_func glDrawElementsInstancedBaseVertex; +extern KWINEFFECTS_EXPORT glDrawElementsBaseVertex_func glDrawElementsBaseVertex; +extern KWINEFFECTS_EXPORT glDrawElementsInstancedBaseVertex_func glDrawElementsInstancedBaseVertex; // GL_ARB_copy_buffer typedef void (*glCopyBufferSubData_func)(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); -extern KWIN_EXPORT glCopyBufferSubData_func glCopyBufferSubData; +extern KWINEFFECTS_EXPORT glCopyBufferSubData_func glCopyBufferSubData; } // namespace @@ -545,20 +543,20 @@ extern KWIN_EXPORT glCopyBufferSubData_func glCopyBufferSubData; namespace KWin { -void KWIN_EXPORT eglResolveFunctions(); -void KWIN_EXPORT glResolveFunctions(OpenGLPlatformInterface platformInterface); +void KWINEFFECTS_EXPORT eglResolveFunctions(); +void KWINEFFECTS_EXPORT glResolveFunctions(OpenGLPlatformInterface platformInterface); // EGL typedef EGLImageKHR(*eglCreateImageKHR_func)(EGLDisplay, EGLContext, EGLenum, EGLClientBuffer, const EGLint*); typedef EGLBoolean(*eglDestroyImageKHR_func)(EGLDisplay, EGLImageKHR); typedef EGLBoolean (*eglPostSubBufferNV_func)(EGLDisplay dpy, EGLSurface surface, EGLint x, EGLint y, EGLint width, EGLint height); -extern KWIN_EXPORT eglCreateImageKHR_func eglCreateImageKHR; -extern KWIN_EXPORT eglDestroyImageKHR_func eglDestroyImageKHR; -extern KWIN_EXPORT eglPostSubBufferNV_func eglPostSubBufferNV; +extern KWINEFFECTS_EXPORT eglCreateImageKHR_func eglCreateImageKHR; +extern KWINEFFECTS_EXPORT eglDestroyImageKHR_func eglDestroyImageKHR; +extern KWINEFFECTS_EXPORT eglPostSubBufferNV_func eglPostSubBufferNV; // GLES typedef GLvoid(*glEGLImageTargetTexture2DOES_func)(GLenum, GLeglImageOES); -extern KWIN_EXPORT glEGLImageTargetTexture2DOES_func glEGLImageTargetTexture2DOES; +extern KWINEFFECTS_EXPORT glEGLImageTargetTexture2DOES_func glEGLImageTargetTexture2DOES; #ifdef KWIN_HAVE_OPENGLES @@ -568,29 +566,29 @@ typedef GLvoid *(*glMapBuffer_func)(GLenum target, GLenum access); typedef GLboolean (*glUnmapBuffer_func)(GLenum target); typedef void (*glGetBufferPointerv_func)(GLenum target, GLenum pname, GLvoid **params); -extern KWIN_EXPORT glMapBuffer_func glMapBuffer; -extern KWIN_EXPORT glUnmapBuffer_func glUnmapBuffer; -extern KWIN_EXPORT glGetBufferPointerv_func glGetBufferPointerv; +extern KWINEFFECTS_EXPORT glMapBuffer_func glMapBuffer; +extern KWINEFFECTS_EXPORT glUnmapBuffer_func glUnmapBuffer; +extern KWINEFFECTS_EXPORT glGetBufferPointerv_func glGetBufferPointerv; // GL_OES_texture_3D typedef GLvoid(*glTexImage3DOES_func)(GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, const GLvoid*); -extern KWIN_EXPORT glTexImage3DOES_func glTexImage3D; +extern KWINEFFECTS_EXPORT glTexImage3DOES_func glTexImage3D; // GL_EXT_map_buffer_range typedef GLvoid *(*glMapBufferRange_func)(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access); typedef void (*glFlushMappedBufferRange_func)(GLenum target, GLintptr offset, GLsizeiptr length); -extern KWIN_EXPORT glMapBufferRange_func glMapBufferRange; -extern KWIN_EXPORT glFlushMappedBufferRange_func glFlushMappedBufferRange; +extern KWINEFFECTS_EXPORT glMapBufferRange_func glMapBufferRange; +extern KWINEFFECTS_EXPORT glFlushMappedBufferRange_func glFlushMappedBufferRange; // GL_EXT_robustness typedef GLenum (*glGetGraphicsResetStatus_func)(); typedef void (*glReadnPixels_func)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, GLvoid *data); typedef void (*glGetnUniformfv_func)(GLuint program, GLint location, GLsizei bufSize, GLfloat *params); -extern KWIN_EXPORT glGetGraphicsResetStatus_func glGetGraphicsResetStatus; -extern KWIN_EXPORT glReadnPixels_func glReadnPixels; -extern KWIN_EXPORT glGetnUniformfv_func glGetnUniformfv; +extern KWINEFFECTS_EXPORT glGetGraphicsResetStatus_func glGetGraphicsResetStatus; +extern KWINEFFECTS_EXPORT glReadnPixels_func glReadnPixels; +extern KWINEFFECTS_EXPORT glGetnUniformfv_func glGetnUniformfv; #endif // KWIN_HAVE_OPENGLES diff --git a/libkwineffects/kwinxrenderutils.h b/libkwineffects/kwinxrenderutils.h index 244ac5ac48..8366fd3a9f 100644 --- a/libkwineffects/kwinxrenderutils.h +++ b/libkwineffects/kwinxrenderutils.h @@ -23,6 +23,7 @@ along with this program. If not, see . // KWin #include +#include // KDE #include // Qt @@ -42,10 +43,10 @@ namespace KWin /** * dumps a QColor into a xcb_render_color_t */ -KWIN_EXPORT xcb_render_color_t preMultiply(const QColor &c, float opacity = 1.0); +KWINEFFECTS_EXPORT xcb_render_color_t preMultiply(const QColor &c, float opacity = 1.0); /** @internal */ -class KWIN_EXPORT XRenderPictureData +class KWINEFFECTS_EXPORT XRenderPictureData : public QSharedData { public: @@ -64,7 +65,7 @@ private: * convenience constructors and freeing of resources. * It should otherwise act exactly like the Picture type. */ -class KWIN_EXPORT XRenderPicture +class KWINEFFECTS_EXPORT XRenderPicture { public: explicit XRenderPicture(xcb_render_picture_t pic = XCB_RENDER_PICTURE_NONE); @@ -76,7 +77,7 @@ private: KSharedPtr< XRenderPictureData > d; }; -class KWIN_EXPORT XFixesRegion +class KWINEFFECTS_EXPORT XFixesRegion { public: explicit XFixesRegion(const QRegion ®ion); @@ -154,12 +155,12 @@ XFixesRegion::operator xcb_xfixes_region_t() * Static 1x1 picture used to deliver a black pixel with given opacity (for blending performance) * Call and Use, the PixelPicture will stay, but may change it's opacity meanwhile. It's NOT threadsafe either */ -KWIN_EXPORT XRenderPicture xRenderBlendPicture(double opacity); +KWINEFFECTS_EXPORT XRenderPicture xRenderBlendPicture(double opacity); /** * Creates a 1x1 Picture filled with c */ -KWIN_EXPORT XRenderPicture xRenderFill(const xcb_render_color_t &c); -KWIN_EXPORT XRenderPicture xRenderFill(const QColor &c); +KWINEFFECTS_EXPORT XRenderPicture xRenderFill(const xcb_render_color_t &c); +KWINEFFECTS_EXPORT XRenderPicture xRenderFill(const QColor &c); /** * Allows to render a window into a (transparent) pixmap @@ -167,7 +168,7 @@ KWIN_EXPORT XRenderPicture xRenderFill(const QColor &c); * NOTICE: it may be 0 * NOTICE: when done call setXRenderWindowOffscreen(false) to continue normal render process */ -KWIN_EXPORT void setXRenderOffscreen(bool b); +KWINEFFECTS_EXPORT void setXRenderOffscreen(bool b); /** * Allows to define a persistent effect member as render target @@ -175,27 +176,27 @@ KWIN_EXPORT void setXRenderOffscreen(bool b); * NOTICE: do NOT call setXRenderOffscreen(true) in addition! * NOTICE: do not forget to xRenderPopTarget once you're done to continue the normal render process */ -KWIN_EXPORT void xRenderPushTarget(XRenderPicture *pic); -KWIN_EXPORT void xRenderPopTarget(); +KWINEFFECTS_EXPORT void xRenderPushTarget(XRenderPicture *pic); +KWINEFFECTS_EXPORT void xRenderPopTarget(); /** * Whether windows are currently rendered into an offscreen target buffer */ -KWIN_EXPORT bool xRenderOffscreen(); +KWINEFFECTS_EXPORT bool xRenderOffscreen(); /** * The offscreen buffer as set by the renderer because of setXRenderWindowOffscreen(true) */ -KWIN_EXPORT xcb_render_picture_t xRenderOffscreenTarget(); +KWINEFFECTS_EXPORT xcb_render_picture_t xRenderOffscreenTarget(); /** * NOTICE: HANDS OFF!!! * scene_setXRenderWindowOffscreenTarget() is ONLY to be used by the renderer - DO NOT TOUCH! */ -KWIN_EXPORT void scene_setXRenderOffscreenTarget(xcb_render_picture_t pix); +KWINEFFECTS_EXPORT void scene_setXRenderOffscreenTarget(xcb_render_picture_t pix); /** * scene_xRenderWindowOffscreenTarget() is used by the scene to figure the target set by an effect */ -KWIN_EXPORT XRenderPicture *scene_xRenderOffscreenTarget(); +KWINEFFECTS_EXPORT XRenderPicture *scene_xRenderOffscreenTarget(); } // namespace