CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In
hrydgard

CoCalc provides the best real-time collaborative environment for Jupyter Notebooks, LaTeX documents, and SageMath, scalable from individual users to large groups and classes!

GitHub Repository: hrydgard/ppsspp
Path: blob/master/android/jni/AndroidJavaGLContext.h
Views: 1401
1
#pragma once
2
3
#include "AndroidGraphicsContext.h"
4
#include "Common/GPU/OpenGL/GLRenderManager.h"
5
#include "Common/GPU/thin3d_create.h"
6
7
class AndroidJavaEGLGraphicsContext : public AndroidGraphicsContext {
8
public:
9
AndroidJavaEGLGraphicsContext();
10
~AndroidJavaEGLGraphicsContext() { delete draw_; }
11
12
// This performs the actual initialization,
13
bool InitFromRenderThread(ANativeWindow *wnd, int desiredBackbufferSizeX, int desiredBackbufferSizeY, int backbufferFormat, int androidVersion) override;
14
15
void ShutdownFromRenderThread() override;
16
17
void Shutdown() override {}
18
void Resize() override {}
19
20
Draw::DrawContext *GetDrawContext() override {
21
return draw_;
22
}
23
24
void ThreadStart() override {
25
renderManager_->ThreadStart(draw_);
26
}
27
28
bool ThreadFrame() override {
29
return renderManager_->ThreadFrame();
30
}
31
32
void BeginAndroidShutdown() override {
33
renderManager_->SetSkipGLCalls();
34
}
35
36
void ThreadEnd() override {
37
renderManager_->ThreadEnd();
38
}
39
40
void StopThread() override {
41
renderManager_->StopThread();
42
}
43
44
private:
45
Draw::DrawContext *draw_ = nullptr;
46
GLRenderManager *renderManager_ = nullptr;
47
};
48
49
50