| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 | 5 |
| 6 #include "ui/gl/gl_bindings_skia_in_process.h" | 6 #include "ui/gl/gl_bindings_skia_in_process.h" |
| 7 | 7 |
| 8 #include "base/logging.h" | 8 #include "base/logging.h" |
| 9 #include "third_party/skia/include/gpu/gl/GrGLInterface.h" | 9 #include "third_party/skia/include/gpu/gl/GrGLInterface.h" |
| 10 #include "ui/gl/gl_bindings.h" | 10 #include "ui/gl/gl_bindings.h" |
| (...skipping 539 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 550 | 550 |
| 551 GLvoid StubGLViewport(GLint x, GLint y, GLsizei width, GLsizei height) { | 551 GLvoid StubGLViewport(GLint x, GLint y, GLsizei width, GLsizei height) { |
| 552 glViewport(x, y, width, height); | 552 glViewport(x, y, width, height); |
| 553 } | 553 } |
| 554 } // extern "C" | 554 } // extern "C" |
| 555 } // namespace | 555 } // namespace |
| 556 | 556 |
| 557 namespace gfx { | 557 namespace gfx { |
| 558 | 558 |
| 559 GrGLInterface* CreateInProcessSkiaGLBinding() { | 559 GrGLInterface* CreateInProcessSkiaGLBinding() { |
| 560 GrGLBinding binding; | 560 GrGLStandard standard; |
| 561 switch (gfx::GetGLImplementation()) { | 561 switch (gfx::GetGLImplementation()) { |
| 562 case gfx::kGLImplementationNone: | 562 case gfx::kGLImplementationNone: |
| 563 NOTREACHED(); | 563 NOTREACHED(); |
| 564 return NULL; | 564 return NULL; |
| 565 case gfx::kGLImplementationDesktopGL: | 565 case gfx::kGLImplementationDesktopGL: |
| 566 case gfx::kGLImplementationAppleGL: | 566 case gfx::kGLImplementationAppleGL: |
| 567 binding = kDesktop_GrGLBinding; | 567 standard = kGL_GrGLStandard; |
| 568 break; | 568 break; |
| 569 case gfx::kGLImplementationOSMesaGL: | 569 case gfx::kGLImplementationOSMesaGL: |
| 570 binding = kDesktop_GrGLBinding; | 570 standard = kGL_GrGLStandard; |
| 571 break; | 571 break; |
| 572 case gfx::kGLImplementationEGLGLES2: | 572 case gfx::kGLImplementationEGLGLES2: |
| 573 binding = kES2_GrGLBinding; | 573 standard = kGLES_GrGLStandard; |
| 574 break; | 574 break; |
| 575 case gfx::kGLImplementationMockGL: | 575 case gfx::kGLImplementationMockGL: |
| 576 NOTREACHED(); | 576 NOTREACHED(); |
| 577 return NULL; | 577 return NULL; |
| 578 default: | 578 default: |
| 579 NOTREACHED(); | 579 NOTREACHED(); |
| 580 return NULL; | 580 return NULL; |
| 581 } | 581 } |
| 582 | 582 |
| 583 GrGLInterface* interface = new GrGLInterface; | 583 GrGLInterface* interface = new GrGLInterface; |
| 584 interface->fStandard = standard; |
| 585 interface->fExtensions.init(standard, |
| 586 StubGLGetString, |
| 587 NULL, |
| 588 StubGLGetIntegerv); |
| 584 | 589 |
| 585 interface->fBindingsExported = binding; | 590 GrGLInterface::Functions* functions = &interface->fFunctions; |
| 586 interface->fActiveTexture = StubGLActiveTexture; | 591 functions->fActiveTexture = StubGLActiveTexture; |
| 587 interface->fAttachShader = StubGLAttachShader; | 592 functions->fAttachShader = StubGLAttachShader; |
| 588 interface->fBeginQuery = StubGLBeginQuery; | 593 functions->fBeginQuery = StubGLBeginQuery; |
| 589 interface->fBindAttribLocation = StubGLBindAttribLocation; | 594 functions->fBindAttribLocation = StubGLBindAttribLocation; |
| 590 interface->fBindBuffer = StubGLBindBuffer; | 595 functions->fBindBuffer = StubGLBindBuffer; |
| 591 interface->fBindFragDataLocation = StubGLBindFragDataLocation; | 596 functions->fBindFragDataLocation = StubGLBindFragDataLocation; |
| 592 interface->fBindTexture = StubGLBindTexture; | 597 functions->fBindTexture = StubGLBindTexture; |
| 593 interface->fBindVertexArray = StubGLBindVertexArray; | 598 functions->fBindVertexArray = StubGLBindVertexArray; |
| 594 interface->fBlendColor = StubGLBlendColor; | 599 functions->fBlendColor = StubGLBlendColor; |
| 595 interface->fBlendFunc = StubGLBlendFunc; | 600 functions->fBlendFunc = StubGLBlendFunc; |
| 596 interface->fBufferData = StubGLBufferData; | 601 functions->fBufferData = StubGLBufferData; |
| 597 interface->fBufferSubData = StubGLBufferSubData; | 602 functions->fBufferSubData = StubGLBufferSubData; |
| 598 interface->fClear = StubGLClear; | 603 functions->fClear = StubGLClear; |
| 599 interface->fClearColor = StubGLClearColor; | 604 functions->fClearColor = StubGLClearColor; |
| 600 interface->fClearStencil = StubGLClearStencil; | 605 functions->fClearStencil = StubGLClearStencil; |
| 601 interface->fColorMask = StubGLColorMask; | 606 functions->fColorMask = StubGLColorMask; |
| 602 interface->fCompileShader = StubGLCompileShader; | 607 functions->fCompileShader = StubGLCompileShader; |
| 603 interface->fCompressedTexImage2D = StubGLCompressedTexImage2D; | 608 functions->fCompressedTexImage2D = StubGLCompressedTexImage2D; |
| 604 interface->fCopyTexSubImage2D = StubGLCopyTexSubImage2D; | 609 functions->fCopyTexSubImage2D = StubGLCopyTexSubImage2D; |
| 605 interface->fCreateProgram = StubGLCreateProgram; | 610 functions->fCreateProgram = StubGLCreateProgram; |
| 606 interface->fCreateShader = StubGLCreateShader; | 611 functions->fCreateShader = StubGLCreateShader; |
| 607 interface->fCullFace = StubGLCullFace; | 612 functions->fCullFace = StubGLCullFace; |
| 608 interface->fDeleteBuffers = StubGLDeleteBuffers; | 613 functions->fDeleteBuffers = StubGLDeleteBuffers; |
| 609 interface->fDeleteProgram = StubGLDeleteProgram; | 614 functions->fDeleteProgram = StubGLDeleteProgram; |
| 610 interface->fDeleteQueries = StubGLDeleteQueries; | 615 functions->fDeleteQueries = StubGLDeleteQueries; |
| 611 interface->fDeleteShader = StubGLDeleteShader; | 616 functions->fDeleteShader = StubGLDeleteShader; |
| 612 interface->fDeleteTextures = StubGLDeleteTextures; | 617 functions->fDeleteTextures = StubGLDeleteTextures; |
| 613 interface->fDeleteVertexArrays = StubGLDeleteVertexArrays; | 618 functions->fDeleteVertexArrays = StubGLDeleteVertexArrays; |
| 614 interface->fDepthMask = StubGLDepthMask; | 619 functions->fDepthMask = StubGLDepthMask; |
| 615 interface->fDisable = StubGLDisable; | 620 functions->fDisable = StubGLDisable; |
| 616 interface->fDisableVertexAttribArray = StubGLDisableVertexAttribArray; | 621 functions->fDisableVertexAttribArray = StubGLDisableVertexAttribArray; |
| 617 interface->fDrawArrays = StubGLDrawArrays; | 622 functions->fDrawArrays = StubGLDrawArrays; |
| 618 interface->fDrawBuffer = StubGLDrawBuffer; | 623 functions->fDrawBuffer = StubGLDrawBuffer; |
| 619 interface->fDrawBuffers = StubGLDrawBuffers; | 624 functions->fDrawBuffers = StubGLDrawBuffers; |
| 620 interface->fDrawElements = StubGLDrawElements; | 625 functions->fDrawElements = StubGLDrawElements; |
| 621 interface->fEnable = StubGLEnable; | 626 functions->fEnable = StubGLEnable; |
| 622 interface->fEnableVertexAttribArray = StubGLEnableVertexAttribArray; | 627 functions->fEnableVertexAttribArray = StubGLEnableVertexAttribArray; |
| 623 interface->fEndQuery = StubGLEndQuery; | 628 functions->fEndQuery = StubGLEndQuery; |
| 624 interface->fFinish = StubGLFinish; | 629 functions->fFinish = StubGLFinish; |
| 625 interface->fFlush = StubGLFlush; | 630 functions->fFlush = StubGLFlush; |
| 626 interface->fFrontFace = StubGLFrontFace; | 631 functions->fFrontFace = StubGLFrontFace; |
| 627 interface->fGenBuffers = StubGLGenBuffers; | 632 functions->fGenBuffers = StubGLGenBuffers; |
| 628 interface->fGenQueries = StubGLGenQueries; | 633 functions->fGenQueries = StubGLGenQueries; |
| 629 interface->fGenTextures = StubGLGenTextures; | 634 functions->fGenTextures = StubGLGenTextures; |
| 630 interface->fGenVertexArrays = StubGLGenVertexArrays; | 635 functions->fGenVertexArrays = StubGLGenVertexArrays; |
| 631 interface->fGetBufferParameteriv = StubGLGetBufferParameteriv; | 636 functions->fGetBufferParameteriv = StubGLGetBufferParameteriv; |
| 632 interface->fGetError = StubGLGetError; | 637 functions->fGetError = StubGLGetError; |
| 633 interface->fGetIntegerv = StubGLGetIntegerv; | 638 functions->fGetIntegerv = StubGLGetIntegerv; |
| 634 interface->fGetQueryiv = StubGLGetQueryiv; | 639 functions->fGetQueryiv = StubGLGetQueryiv; |
| 635 interface->fGetQueryObjecti64v = StubGLGetQueryObjecti64v; | 640 functions->fGetQueryObjecti64v = StubGLGetQueryObjecti64v; |
| 636 interface->fGetQueryObjectiv = StubGLGetQueryObjectiv; | 641 functions->fGetQueryObjectiv = StubGLGetQueryObjectiv; |
| 637 interface->fGetQueryObjectui64v = StubGLGetQueryObjectui64v; | 642 functions->fGetQueryObjectui64v = StubGLGetQueryObjectui64v; |
| 638 interface->fGetQueryObjectuiv = StubGLGetQueryObjectuiv; | 643 functions->fGetQueryObjectuiv = StubGLGetQueryObjectuiv; |
| 639 interface->fGetProgramInfoLog = StubGLGetProgramInfoLog; | 644 functions->fGetProgramInfoLog = StubGLGetProgramInfoLog; |
| 640 interface->fGetProgramiv = StubGLGetProgramiv; | 645 functions->fGetProgramiv = StubGLGetProgramiv; |
| 641 interface->fGetShaderInfoLog = StubGLGetShaderInfoLog; | 646 functions->fGetShaderInfoLog = StubGLGetShaderInfoLog; |
| 642 interface->fGetShaderiv = StubGLGetShaderiv; | 647 functions->fGetShaderiv = StubGLGetShaderiv; |
| 643 interface->fGetString = StubGLGetString; | 648 functions->fGetString = StubGLGetString; |
| 644 interface->fGetTexLevelParameteriv = StubGLGetTexLevelParameteriv; | 649 functions->fGetTexLevelParameteriv = StubGLGetTexLevelParameteriv; |
| 645 interface->fGetUniformLocation = StubGLGetUniformLocation; | 650 functions->fGetUniformLocation = StubGLGetUniformLocation; |
| 646 interface->fLineWidth = StubGLLineWidth; | 651 functions->fLineWidth = StubGLLineWidth; |
| 647 interface->fLinkProgram = StubGLLinkProgram; | 652 functions->fLinkProgram = StubGLLinkProgram; |
| 648 interface->fPixelStorei = StubGLPixelStorei; | 653 functions->fPixelStorei = StubGLPixelStorei; |
| 649 interface->fQueryCounter = StubGLQueryCounter; | 654 functions->fQueryCounter = StubGLQueryCounter; |
| 650 interface->fReadBuffer = StubGLReadBuffer; | 655 functions->fReadBuffer = StubGLReadBuffer; |
| 651 interface->fReadPixels = StubGLReadPixels; | 656 functions->fReadPixels = StubGLReadPixels; |
| 652 interface->fScissor = StubGLScissor; | 657 functions->fScissor = StubGLScissor; |
| 653 interface->fShaderSource = StubGLShaderSource; | 658 functions->fShaderSource = StubGLShaderSource; |
| 654 interface->fStencilFunc = StubGLStencilFunc; | 659 functions->fStencilFunc = StubGLStencilFunc; |
| 655 interface->fStencilFuncSeparate = StubGLStencilFuncSeparate; | 660 functions->fStencilFuncSeparate = StubGLStencilFuncSeparate; |
| 656 interface->fStencilMask = StubGLStencilMask; | 661 functions->fStencilMask = StubGLStencilMask; |
| 657 interface->fStencilMaskSeparate = StubGLStencilMaskSeparate; | 662 functions->fStencilMaskSeparate = StubGLStencilMaskSeparate; |
| 658 interface->fStencilOp = StubGLStencilOp; | 663 functions->fStencilOp = StubGLStencilOp; |
| 659 interface->fStencilOpSeparate = StubGLStencilOpSeparate; | 664 functions->fStencilOpSeparate = StubGLStencilOpSeparate; |
| 660 interface->fTexImage2D = StubGLTexImage2D; | 665 functions->fTexImage2D = StubGLTexImage2D; |
| 661 interface->fTexParameteri = StubGLTexParameteri; | 666 functions->fTexParameteri = StubGLTexParameteri; |
| 662 interface->fTexParameteriv = StubGLTexParameteriv; | 667 functions->fTexParameteriv = StubGLTexParameteriv; |
| 663 interface->fTexSubImage2D = StubGLTexSubImage2D; | 668 functions->fTexSubImage2D = StubGLTexSubImage2D; |
| 664 interface->fTexStorage2D = StubGLTexStorage2D; | 669 functions->fTexStorage2D = StubGLTexStorage2D; |
| 665 interface->fUniform1f = StubGLUniform1f; | 670 functions->fUniform1f = StubGLUniform1f; |
| 666 interface->fUniform1i = StubGLUniform1i; | 671 functions->fUniform1i = StubGLUniform1i; |
| 667 interface->fUniform1fv = StubGLUniform1fv; | 672 functions->fUniform1fv = StubGLUniform1fv; |
| 668 interface->fUniform1iv = StubGLUniform1iv; | 673 functions->fUniform1iv = StubGLUniform1iv; |
| 669 interface->fUniform2f = StubGLUniform2f; | 674 functions->fUniform2f = StubGLUniform2f; |
| 670 interface->fUniform2i = StubGLUniform2i; | 675 functions->fUniform2i = StubGLUniform2i; |
| 671 interface->fUniform2fv = StubGLUniform2fv; | 676 functions->fUniform2fv = StubGLUniform2fv; |
| 672 interface->fUniform2iv = StubGLUniform2iv; | 677 functions->fUniform2iv = StubGLUniform2iv; |
| 673 interface->fUniform3f = StubGLUniform3f; | 678 functions->fUniform3f = StubGLUniform3f; |
| 674 interface->fUniform3i = StubGLUniform3i; | 679 functions->fUniform3i = StubGLUniform3i; |
| 675 interface->fUniform3fv = StubGLUniform3fv; | 680 functions->fUniform3fv = StubGLUniform3fv; |
| 676 interface->fUniform3iv = StubGLUniform3iv; | 681 functions->fUniform3iv = StubGLUniform3iv; |
| 677 interface->fUniform4f = StubGLUniform4f; | 682 functions->fUniform4f = StubGLUniform4f; |
| 678 interface->fUniform4i = StubGLUniform4i; | 683 functions->fUniform4i = StubGLUniform4i; |
| 679 interface->fUniform4fv = StubGLUniform4fv; | 684 functions->fUniform4fv = StubGLUniform4fv; |
| 680 interface->fUniform4iv = StubGLUniform4iv; | 685 functions->fUniform4iv = StubGLUniform4iv; |
| 681 interface->fUniformMatrix2fv = StubGLUniformMatrix2fv; | 686 functions->fUniformMatrix2fv = StubGLUniformMatrix2fv; |
| 682 interface->fUniformMatrix3fv = StubGLUniformMatrix3fv; | 687 functions->fUniformMatrix3fv = StubGLUniformMatrix3fv; |
| 683 interface->fUniformMatrix4fv = StubGLUniformMatrix4fv; | 688 functions->fUniformMatrix4fv = StubGLUniformMatrix4fv; |
| 684 interface->fUseProgram = StubGLUseProgram; | 689 functions->fUseProgram = StubGLUseProgram; |
| 685 interface->fVertexAttrib4fv = StubGLVertexAttrib4fv; | 690 functions->fVertexAttrib4fv = StubGLVertexAttrib4fv; |
| 686 interface->fVertexAttribPointer = StubGLVertexAttribPointer; | 691 functions->fVertexAttribPointer = StubGLVertexAttribPointer; |
| 687 interface->fViewport = StubGLViewport; | 692 functions->fViewport = StubGLViewport; |
| 688 interface->fBindFramebuffer = StubGLBindFramebuffer; | 693 functions->fBindFramebuffer = StubGLBindFramebuffer; |
| 689 interface->fBindRenderbuffer = StubGLBindRenderbuffer; | 694 functions->fBindRenderbuffer = StubGLBindRenderbuffer; |
| 690 interface->fCheckFramebufferStatus = StubGLCheckFramebufferStatus; | 695 functions->fCheckFramebufferStatus = StubGLCheckFramebufferStatus; |
| 691 interface->fDeleteFramebuffers = StubGLDeleteFramebuffers; | 696 functions->fDeleteFramebuffers = StubGLDeleteFramebuffers; |
| 692 interface->fDeleteRenderbuffers = StubGLDeleteRenderbuffers; | 697 functions->fDeleteRenderbuffers = StubGLDeleteRenderbuffers; |
| 693 interface->fFramebufferRenderbuffer = StubGLFramebufferRenderbuffer; | 698 functions->fFramebufferRenderbuffer = StubGLFramebufferRenderbuffer; |
| 694 interface->fFramebufferTexture2D = StubGLFramebufferTexture2D; | 699 functions->fFramebufferTexture2D = StubGLFramebufferTexture2D; |
| 695 interface->fFramebufferTexture2DMultisample = | 700 functions->fFramebufferTexture2DMultisample = |
| 696 StubGLFramebufferTexture2DMultisample; | 701 StubGLFramebufferTexture2DMultisample; |
| 697 interface->fGenFramebuffers = StubGLGenFramebuffers; | 702 functions->fGenFramebuffers = StubGLGenFramebuffers; |
| 698 interface->fGenRenderbuffers = StubGLGenRenderbuffers; | 703 functions->fGenRenderbuffers = StubGLGenRenderbuffers; |
| 699 interface->fGetFramebufferAttachmentParameteriv = | 704 functions->fGetFramebufferAttachmentParameteriv = |
| 700 StubGLGetFramebufferAttachmentParameteriv; | 705 StubGLGetFramebufferAttachmentParameteriv; |
| 701 interface->fGetRenderbufferParameteriv = StubGLGetRenderbufferParameteriv; | 706 functions->fGetRenderbufferParameteriv = StubGLGetRenderbufferParameteriv; |
| 702 interface->fRenderbufferStorage = StubGLRenderbufferStorage; | 707 functions->fRenderbufferStorage = StubGLRenderbufferStorage; |
| 703 interface->fRenderbufferStorageMultisample = | 708 functions->fRenderbufferStorageMultisample = |
| 704 StubGLRenderbufferStorageMultisample; | 709 StubGLRenderbufferStorageMultisample; |
| 705 interface->fBlitFramebuffer = StubGLBlitFramebuffer; | 710 functions->fBlitFramebuffer = StubGLBlitFramebuffer; |
| 706 interface->fMapBuffer = StubGLMapBuffer; | 711 functions->fMapBuffer = StubGLMapBuffer; |
| 707 interface->fUnmapBuffer = StubGLUnmapBuffer; | 712 functions->fUnmapBuffer = StubGLUnmapBuffer; |
| 708 interface->fBindFragDataLocationIndexed = | 713 functions->fBindFragDataLocationIndexed = |
| 709 StubGLBindFragDataLocationIndexed; | 714 StubGLBindFragDataLocationIndexed; |
| 715 |
| 710 return interface; | 716 return interface; |
| 711 } | 717 } |
| 712 | 718 |
| 713 } // namespace gfx | 719 } // namespace gfx |
| OLD | NEW |