46 };
47
48 @Override
49 GLGPUInfo[] getPreQualificationFilter() {
50 return preQualificationFilter;
51 }
52
53 @Override
54 GLGPUInfo[] getBlackList() {
55 return blackList;
56 }
57
58 @Override
59 GLContext createGLContext(long nativeCtxInfo) {
60 return new MacGLContext(nativeCtxInfo);
61 }
62
63 @Override
64 GLContext createGLContext(GLDrawable drawable, GLPixelFormat pixelFormat,
65 GLContext shareCtx, boolean vSyncRequest) {
66 return new MacGLContext(drawable, pixelFormat, shareCtx, vSyncRequest);
67 }
68
69 @Override
70 GLDrawable createDummyGLDrawable(GLPixelFormat pixelFormat) {
71 return new MacGLDrawable(pixelFormat);
72 }
73
74 @Override
75 GLDrawable createGLDrawable(long nativeWindow, GLPixelFormat pixelFormat) {
76 return new MacGLDrawable(nativeWindow, pixelFormat);
77 }
78
79 @Override
80 GLPixelFormat createGLPixelFormat(long nativeScreen, Attributes attributes) {
81 return new MacGLPixelFormat(nativeScreen, attributes);
82 }
83
84 @Override
85 boolean initialize(Class psClass, Attributes attrs) {
86
108 }
109
110 @Override
111 int getAdapterCount() {
112 return nGetAdapterCount();
113 }
114
115 @Override
116 int getAdapterOrdinal(long nativeScreen) {
117 return nGetAdapterOrdinal(nativeScreen);
118 }
119
120 @Override
121 void updateDeviceDetails(HashMap deviceDetails) {
122 deviceDetails.put("shareContextPtr", getShareContext().getNativeHandle());
123 }
124
125 // JIRA: RT-21739
126 // TODO: This is a temporary mechanism to work well with Glass on Mac due
127 // to the CALayer work. Need to be removed in the early future for 3.0
128 @Override
129 void updateDeviceDetails(HashMap deviceDetails, GLContext glContext) {
130 deviceDetails.put("contextPtr", glContext.getNativeHandle());
131 }
132 }
|
46 };
47
48 @Override
49 GLGPUInfo[] getPreQualificationFilter() {
50 return preQualificationFilter;
51 }
52
53 @Override
54 GLGPUInfo[] getBlackList() {
55 return blackList;
56 }
57
58 @Override
59 GLContext createGLContext(long nativeCtxInfo) {
60 return new MacGLContext(nativeCtxInfo);
61 }
62
63 @Override
64 GLContext createGLContext(GLDrawable drawable, GLPixelFormat pixelFormat,
65 GLContext shareCtx, boolean vSyncRequest) {
66 GLContext prismCtx = new MacGLContext(drawable, pixelFormat, shareCtx, vSyncRequest);
67
68 // JIRA: RT-21739
69 // TODO: This is a temporary mechanism to work well with Glass on Mac due
70 // to the CALayer work. Need to be removed in the early future for 3.0
71 HashMap devDetails = (HashMap) ES2Pipeline.getInstance().getDeviceDetails();
72 updateDeviceDetails(devDetails, prismCtx);
73
74 return prismCtx;
75 }
76
77 @Override
78 GLDrawable createDummyGLDrawable(GLPixelFormat pixelFormat) {
79 return new MacGLDrawable(pixelFormat);
80 }
81
82 @Override
83 GLDrawable createGLDrawable(long nativeWindow, GLPixelFormat pixelFormat) {
84 return new MacGLDrawable(nativeWindow, pixelFormat);
85 }
86
87 @Override
88 GLPixelFormat createGLPixelFormat(long nativeScreen, Attributes attributes) {
89 return new MacGLPixelFormat(nativeScreen, attributes);
90 }
91
92 @Override
93 boolean initialize(Class psClass, Attributes attrs) {
94
116 }
117
118 @Override
119 int getAdapterCount() {
120 return nGetAdapterCount();
121 }
122
123 @Override
124 int getAdapterOrdinal(long nativeScreen) {
125 return nGetAdapterOrdinal(nativeScreen);
126 }
127
128 @Override
129 void updateDeviceDetails(HashMap deviceDetails) {
130 deviceDetails.put("shareContextPtr", getShareContext().getNativeHandle());
131 }
132
133 // JIRA: RT-21739
134 // TODO: This is a temporary mechanism to work well with Glass on Mac due
135 // to the CALayer work. Need to be removed in the early future for 3.0
136 private void updateDeviceDetails(HashMap deviceDetails, GLContext glContext) {
137 deviceDetails.put("contextPtr", glContext.getNativeHandle());
138 }
139 }
|