/** * Creates a tracer implementation that wraps OpenGL 2+. * * @param glInterface OGL object to wrap * @param glInterfaceClasses The interface(s) to implement * @return A tracer that implements the given interface */ public static Object createDesktopGlTracer(Object glInterface, Class<?> ... glInterfaceClasses) { IntMap<String> constMap = generateConstantMap(GL2.class, GL3.class, GL4.class, GLFbo.class, GLExt.class); return Proxy.newProxyInstance(glInterface.getClass().getClassLoader(), glInterfaceClasses, new GLTracer(glInterface, constMap)); }
/** * Creates a tracer implementation that wraps OpenGL ES 2. * * @param glInterface OGL object to wrap * @param glInterfaceClasses The interface(s) to implement * @return A tracer that implements the given interface */ public static Object createGlesTracer(Object glInterface, Class<?>... glInterfaceClasses) { IntMap<String> constMap = generateConstantMap(GL.class, GL2.class, GL3.class, GLFbo.class, GLExt.class); return Proxy.newProxyInstance( glInterface.getClass().getClassLoader(), glInterfaceClasses, new GLTracer(glInterface, constMap)); }
/** * Creates a tracer implementation that wraps OpenGL 2+. * * @param glInterface OGL object to wrap * @param glInterfaceClasses The interface(s) to implement * @return A tracer that implements the given interface */ public static Object createDesktopGlTracer(Object glInterface, Class<?> ... glInterfaceClasses) { IntMap<String> constMap = generateConstantMap(GL2.class, GL3.class, GL4.class, GLFbo.class, GLExt.class); return Proxy.newProxyInstance(glInterface.getClass().getClassLoader(), glInterfaceClasses, new GLTracer(glInterface, constMap)); }
/** * Creates a tracer implementation that wraps OpenGL ES 2. * * @param glInterface OGL object to wrap * @param glInterfaceClasses The interface(s) to implement * @return A tracer that implements the given interface */ public static Object createGlesTracer(Object glInterface, Class<?>... glInterfaceClasses) { IntMap<String> constMap = generateConstantMap(GL.class, GL2.class, GL3.class, GLFbo.class, GLExt.class); return Proxy.newProxyInstance( glInterface.getClass().getClassLoader(), glInterfaceClasses, new GLTracer(glInterface, constMap)); }