aboutsummaryrefslogtreecommitdiffstats
path: root/src/jake2/render/opengl/GLDriver.java
blob: 7f8643016169f8aa63b5b49caf2d3d58d20d5d1c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package jake2.render.opengl;

import java.util.List;

import javax.media.nativewindow.util.Dimension;

import jake2.qcommon.xcommand_t;

import com.jogamp.newt.MonitorMode;

public interface GLDriver {
    
    boolean init(int xpos, int ypos);
    
    int setMode(Dimension dim, int mode, boolean fullscreen);
    
    void shutdown();
    
    void beginFrame(float camera_separation);
    
    /** Performs <code>swapBuffers()</code>, ticks the fps counter and performs <code>QUIT</code> if requested. */ 
    void endFrame();

    void appActivate(boolean activate);
    
    void enableLogging(boolean enable);
    
    void logNewFrame();
    
    List<MonitorMode> getModeList();

    void updateScreen(xcommand_t callback);

    void screenshot();
    
}