summaryrefslogtreecommitdiffstats
path: root/o3d/core/win
diff options
context:
space:
mode:
authorpetersont@google.com <petersont@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-08-26 02:39:33 +0000
committerpetersont@google.com <petersont@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-08-26 02:39:33 +0000
commite73d4f7b1f150436dae5d589fd73c8d17c2dcb56 (patch)
treeabdc8f4fba62512c716f14b67badd7993c0394fe /o3d/core/win
parenta4369599f7e9c15c66bcf66cc1c9bd158666eea4 (diff)
downloadchromium_src-e73d4f7b1f150436dae5d589fd73c8d17c2dcb56.zip
chromium_src-e73d4f7b1f150436dae5d589fd73c8d17c2dcb56.tar.gz
chromium_src-e73d4f7b1f150436dae5d589fd73c8d17c2dcb56.tar.bz2
Created new build target for opengl command buffer service, fixed various bugs in opengl command buffers service code until unit tests passed on windows.
Review URL: http://codereview.chromium.org/165279 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24415 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'o3d/core/win')
-rw-r--r--o3d/core/win/command_buffer/win32_cb_server.cc6
-rw-r--r--o3d/core/win/command_buffer/win32_cb_server.h12
2 files changed, 16 insertions, 2 deletions
diff --git a/o3d/core/win/command_buffer/win32_cb_server.cc b/o3d/core/win/command_buffer/win32_cb_server.cc
index 01bfd26..7b70466 100644
--- a/o3d/core/win/command_buffer/win32_cb_server.cc
+++ b/o3d/core/win/command_buffer/win32_cb_server.cc
@@ -46,13 +46,17 @@ using command_buffer::IMCMessageProcessor;
using command_buffer::BufferSyncProxy;
using command_buffer::CommandBufferEngine;
-Win32CBServer::Win32CBServer(HWND window)
+Win32CBServer::Win32CBServer(HWND window, Features* features)
: gapi_(),
proxy_(NULL),
imc_sender_(NULL),
thread_(NULL) {
gapi_.set_hwnd(window);
+#if defined(CB_RENDERER_GL)
+ gapi_.set_anti_aliased(!features->not_anti_aliased());
+#endif
+
nacl::Handle handles[2];
nacl::SocketPair(handles);
diff --git a/o3d/core/win/command_buffer/win32_cb_server.h b/o3d/core/win/command_buffer/win32_cb_server.h
index 8d34e8d1..49a34f7 100644
--- a/o3d/core/win/command_buffer/win32_cb_server.h
+++ b/o3d/core/win/command_buffer/win32_cb_server.h
@@ -37,9 +37,15 @@
#define O3D_CORE_WIN_COMMAND_BUFFER_WIN32_CB_SERVER_H_
#include "core/cross/precompile.h"
+#include "core/cross/features.h"
#include "command_buffer/common/cross/rpc_imc.h"
#include "command_buffer/client/cross/buffer_sync_proxy.h"
+#if defined(CB_SERVICE_D3D9)
#include "command_buffer/service/win/d3d9/gapi_d3d9.h"
+#elif defined(CB_SERVICE_GL)
+#include "command_buffer/service/cross/gl/gapi_gl.h"
+#endif
+
namespace o3d {
@@ -50,7 +56,7 @@ namespace o3d {
// to connect to the service.
class Win32CBServer {
public:
- explicit Win32CBServer(HWND window);
+ explicit Win32CBServer(HWND window, Features* features);
~Win32CBServer();
// Gets the (client-side) command buffer interface.
@@ -59,7 +65,11 @@ class Win32CBServer {
private:
static DWORD WINAPI ThreadMain(LPVOID param);
+#if defined(CB_SERVICE_D3D9)
command_buffer::GAPID3D9 gapi_;
+#elif defined(CB_SERVICE_GL)
+ command_buffer::GAPIGL gapi_;
+#endif
nacl::HtpHandle socket_pair_[2];
scoped_ptr<command_buffer::IMCSender> imc_sender_;
scoped_ptr<command_buffer::BufferSyncProxy> proxy_;