| 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 #ifndef GPU_BLINK_WEBGRAPHICSCONTEXT3D_IMPL_H_ | 5 #ifndef GPU_BLINK_WEBGRAPHICSCONTEXT3D_IMPL_H_ |
| 6 #define GPU_BLINK_WEBGRAPHICSCONTEXT3D_IMPL_H_ | 6 #define GPU_BLINK_WEBGRAPHICSCONTEXT3D_IMPL_H_ |
| 7 | 7 |
| 8 #include <string> | 8 #include <string> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| (...skipping 669 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 680 blink::WGC3Dint stencil); | 680 blink::WGC3Dint stencil); |
| 681 virtual void clearBufferfv(blink::WGC3Denum buffer, | 681 virtual void clearBufferfv(blink::WGC3Denum buffer, |
| 682 blink::WGC3Dint drawbuffer, | 682 blink::WGC3Dint drawbuffer, |
| 683 const blink::WGC3Dfloat* value); | 683 const blink::WGC3Dfloat* value); |
| 684 virtual void clearBufferiv(blink::WGC3Denum buffer, | 684 virtual void clearBufferiv(blink::WGC3Denum buffer, |
| 685 blink::WGC3Dint drawbuffer, | 685 blink::WGC3Dint drawbuffer, |
| 686 const blink::WGC3Dint* value); | 686 const blink::WGC3Dint* value); |
| 687 virtual void clearBufferuiv(blink::WGC3Denum buffer, | 687 virtual void clearBufferuiv(blink::WGC3Denum buffer, |
| 688 blink::WGC3Dint drawbuffer, | 688 blink::WGC3Dint drawbuffer, |
| 689 const blink::WGC3Duint* value); | 689 const blink::WGC3Duint* value); |
| 690 // virtual blink::WGC3Denum clientWaitSync(blink::WebGLId sync, | 690 virtual blink::WGC3Denum clientWaitSync(blink::WGC3Dsync sync, |
| 691 // blink::WGC3Dbitfield flags, | 691 blink::WGC3Dbitfield flags, |
| 692 // blink::WGC3Duint64 timeout); | 692 blink::WGC3Duint64 timeout); |
| 693 // virtual void compressedTexImage3D(blink::WGC3Denum target, blink::WGC3Dint | 693 //virtual void compressedTexImage3D(blink::WGC3Denum target, |
| 694 // level, | 694 // blink::WGC3Dint level, |
| 695 // blink::WGC3Denum internalformat, blink::WGC3Dsizei width, | 695 // blink::WGC3Denum internalformat, |
| 696 // WGC3Dsizei height, WGC3Dsizei depth, blink::WGC3Dint border, | 696 // blink::WGC3Dsizei width, |
| 697 // WGC3Dsizei imageSize, const void *data); | 697 // blink::WGC3Dsizei height, |
| 698 // virtual void compressedTexSubImage3D(blink::WGC3Denum target, | 698 // blink::WGC3Dsizei depth, |
| 699 // blink::WGC3Dint level, blink::WGC3Dint xoffset, blink::WGC3Dint yoffset, | 699 // blink::WGC3Dint border, |
| 700 // blink::WGC3Dint zoffset, | 700 // blink::WGC3Dsizei imageSize, |
| 701 // blink::WGC3Dsizei width, blink::WGC3Dsizei height, | 701 // const void *data); |
| 702 // blink::WGC3Dsizei depth, blink::WGC3Denum format, | 702 //virtual void compressedTexSubImage3D(blink::WGC3Denum target, |
| 703 // blink::WGC3Dsizei imageSize, const void *data); | 703 // blink::WGC3Dint level, |
| 704 // blink::WGC3Dint xoffset, |
| 705 // blink::WGC3Dint yoffset, |
| 706 // blink::WGC3Dint zoffset, |
| 707 // blink::WGC3Dsizei width, |
| 708 // blink::WGC3Dsizei height, |
| 709 // blink::WGC3Dsizei depth, |
| 710 // blink::WGC3Denum format, |
| 711 // blink::WGC3Dsizei imageSize, |
| 712 // const void *data); |
| 704 virtual void copyBufferSubData(blink::WGC3Denum readTarget, | 713 virtual void copyBufferSubData(blink::WGC3Denum readTarget, |
| 705 blink::WGC3Denum writeTarget, | 714 blink::WGC3Denum writeTarget, |
| 706 blink::WGC3Dintptr readOffset, | 715 blink::WGC3Dintptr readOffset, |
| 707 blink::WGC3Dintptr writeOffset, | 716 blink::WGC3Dintptr writeOffset, |
| 708 blink::WGC3Dsizeiptr size); | 717 blink::WGC3Dsizeiptr size); |
| 709 virtual void copyTexSubImage3D(blink::WGC3Denum target, | 718 virtual void copyTexSubImage3D(blink::WGC3Denum target, |
| 710 blink::WGC3Dint level, | 719 blink::WGC3Dint level, |
| 711 blink::WGC3Dint xoffset, | 720 blink::WGC3Dint xoffset, |
| 712 blink::WGC3Dint yoffset, | 721 blink::WGC3Dint yoffset, |
| 713 blink::WGC3Dint zoffset, | 722 blink::WGC3Dint zoffset, |
| 714 blink::WGC3Dint x, | 723 blink::WGC3Dint x, |
| 715 blink::WGC3Dint y, | 724 blink::WGC3Dint y, |
| 716 blink::WGC3Dsizei width, | 725 blink::WGC3Dsizei width, |
| 717 blink::WGC3Dsizei height); | 726 blink::WGC3Dsizei height); |
| 718 virtual blink::WebGLId createSampler(); | 727 virtual blink::WebGLId createSampler(); |
| 719 virtual blink::WebGLId createTransformFeedback(); | 728 virtual blink::WebGLId createTransformFeedback(); |
| 720 virtual void deleteSampler(blink::WebGLId sampler); | 729 virtual void deleteSampler(blink::WebGLId sampler); |
| 721 // virtual void deleteSync(blink::WebGLId sync); | 730 virtual void deleteSync(blink::WGC3Dsync sync); |
| 722 virtual void deleteTransformFeedback(blink::WebGLId transformfeedback); | 731 virtual void deleteTransformFeedback(blink::WebGLId transformfeedback); |
| 732 virtual void drawRangeElements(blink::WGC3Denum mode, |
| 733 blink::WGC3Duint start, |
| 734 blink::WGC3Duint end, |
| 735 blink::WGC3Dsizei count, |
| 736 blink::WGC3Denum type, |
| 737 blink::WGC3Dintptr offset); |
| 723 virtual void endTransformFeedback(void); | 738 virtual void endTransformFeedback(void); |
| 724 // virtual blink::WebGLId fenceSync(blink::WGC3Denum condition, | 739 virtual blink::WGC3Dsync fenceSync(blink::WGC3Denum condition, |
| 725 // blink::WGC3Dbitfield flags); | 740 blink::WGC3Dbitfield flags); |
| 726 virtual void framebufferTextureLayer(blink::WGC3Denum target, | 741 virtual void framebufferTextureLayer(blink::WGC3Denum target, |
| 727 blink::WGC3Denum attachment, | 742 blink::WGC3Denum attachment, |
| 728 blink::WGC3Duint texture, | 743 blink::WGC3Duint texture, |
| 729 blink::WGC3Dint level, | 744 blink::WGC3Dint level, |
| 730 blink::WGC3Dint layer); | 745 blink::WGC3Dint layer); |
| 731 virtual void getActiveUniformBlockName(blink::WGC3Duint program, | 746 virtual void getActiveUniformBlockName(blink::WGC3Duint program, |
| 732 blink::WGC3Duint uniformBlockIndex, | 747 blink::WGC3Duint uniformBlockIndex, |
| 733 blink::WGC3Dsizei bufSize, | 748 blink::WGC3Dsizei bufSize, |
| 734 blink::WGC3Dsizei* length, | 749 blink::WGC3Dsizei* length, |
| 735 blink::WGC3Dchar* uniformBlockName); | 750 blink::WGC3Dchar* uniformBlockName); |
| 736 virtual void getActiveUniformBlockiv(blink::WGC3Duint program, | 751 virtual void getActiveUniformBlockiv(blink::WGC3Duint program, |
| 737 blink::WGC3Duint uniformBlockIndex, | 752 blink::WGC3Duint uniformBlockIndex, |
| 738 blink::WGC3Denum pname, | 753 blink::WGC3Denum pname, |
| 739 blink::WGC3Dint* params); | 754 blink::WGC3Dint* params); |
| 740 // virtual void getActiveUniformsiv(blink::WGC3Duint program, | 755 virtual void getActiveUniformsiv(blink::WGC3Duint program, |
| 741 // blink::WGC3Dsizei uniformCount, const blink::WGC3Duint *uniformIndices, | 756 blink::WGC3Dsizei uniformCount, |
| 742 // blink::WGC3Denum pname, blink::WGC3Dint *params); | 757 const blink::WGC3Duint *uniformIndices, |
| 758 blink::WGC3Denum pname, |
| 759 blink::WGC3Dint *params); |
| 743 virtual blink::WGC3Dint getFragDataLocation(blink::WGC3Duint program, | 760 virtual blink::WGC3Dint getFragDataLocation(blink::WGC3Duint program, |
| 744 const blink::WGC3Dchar* name); | 761 const blink::WGC3Dchar* name); |
| 745 virtual void getInternalformativ(blink::WGC3Denum target, | 762 virtual void getInternalformativ(blink::WGC3Denum target, |
| 746 blink::WGC3Denum internalformat, | 763 blink::WGC3Denum internalformat, |
| 747 blink::WGC3Denum pname, | 764 blink::WGC3Denum pname, |
| 748 blink::WGC3Dsizei bufSize, | 765 blink::WGC3Dsizei bufSize, |
| 749 blink::WGC3Dint* params); | 766 blink::WGC3Dint* params); |
| 750 virtual void getSamplerParameterfv(blink::WGC3Duint sampler, | 767 virtual void getSamplerParameterfv(blink::WGC3Duint sampler, |
| 751 blink::WGC3Denum pname, | 768 blink::WGC3Denum pname, |
| 752 blink::WGC3Dfloat* params); | 769 blink::WGC3Dfloat* params); |
| 753 virtual void getSamplerParameteriv(blink::WGC3Duint sampler, | 770 virtual void getSamplerParameteriv(blink::WGC3Duint sampler, |
| 754 blink::WGC3Denum pname, | 771 blink::WGC3Denum pname, |
| 755 blink::WGC3Dint* params); | 772 blink::WGC3Dint* params); |
| 756 // virtual void getTransformFeedbackVarying(blink::WGC3Duint program, | 773 virtual void getTransformFeedbackVarying(blink::WGC3Duint program, |
| 757 // blink::WGC3Duint index, | 774 blink::WGC3Duint index, |
| 758 // blink::WGC3Dsizei bufSize, blink::WGC3Dsizei *length, | 775 blink::WGC3Dsizei bufSize, |
| 759 // blink::WGC3Dsizei *size, blink::WGC3Denum *type, | 776 blink::WGC3Dsizei *length, |
| 760 // blink::WGC3Dchar *name); | 777 blink::WGC3Dsizei *size, |
| 778 blink::WGC3Denum *type, |
| 779 blink::WGC3Dchar *name); |
| 761 virtual blink::WGC3Duint getUniformBlockIndex( | 780 virtual blink::WGC3Duint getUniformBlockIndex( |
| 762 blink::WGC3Duint program, | 781 blink::WGC3Duint program, const blink::WGC3Dchar* uniformBlockName); |
| 763 const blink::WGC3Dchar* uniformBlockName); | 782 virtual void getUniformIndices(blink::WGC3Duint program, |
| 764 // virtual void getUniformIndices(blink::WGC3Duint program, | 783 blink::WGC3Dsizei uniformCount, |
| 765 // blink::WGC3Dsizei uniformCount, | 784 const blink::WGC3Dchar *const*uniformNames, |
| 766 // const blink::WGC3Dchar *const*uniformNames, | 785 blink::WGC3Duint *uniformIndices); |
| 767 // blink::WGC3Duint *uniformIndices); | 786 //virtual void getUniformuiv(blink::WGC3Duint program, |
| 768 // virtual void getUniformuiv(blink::WGC3Duint program, blink::WGC3Dint | 787 // blink::WGC3Dint location, |
| 769 // location, | 788 // blink::WGC3Duint *params); |
| 770 // blink::WGC3Duint *params); | 789 //virtual void getVertexAttribIiv(blink::WGC3Duint index, |
| 771 // virtual void getVertexAttribIiv(blink::WGC3Duint index, blink::WGC3Denum | 790 // blink::WGC3Denum pname, |
| 772 // pname, | 791 // blink::WGC3Dint *params); |
| 773 // blink::WGC3Dint *params); | 792 //virtual void getVertexAttribIuiv(blink::WGC3Duint index, |
| 774 // virtual void getVertexAttribIuiv(blink::WGC3Duint index, blink::WGC3Denum | 793 // blink::WGC3Denum pname, |
| 775 // pname, | 794 // blink::WGC3Duint *params); |
| 776 // blink::WGC3Duint *params); | |
| 777 virtual void invalidateFramebuffer(blink::WGC3Denum target, | 795 virtual void invalidateFramebuffer(blink::WGC3Denum target, |
| 778 blink::WGC3Dsizei numAttachments, | 796 blink::WGC3Dsizei numAttachments, |
| 779 const blink::WGC3Denum* attachments); | 797 const blink::WGC3Denum* attachments); |
| 780 virtual void invalidateSubFramebuffer(blink::WGC3Denum target, | 798 virtual void invalidateSubFramebuffer(blink::WGC3Denum target, |
| 781 blink::WGC3Dsizei numAttachments, | 799 blink::WGC3Dsizei numAttachments, |
| 782 const blink::WGC3Denum* attachments, | 800 const blink::WGC3Denum* attachments, |
| 783 blink::WGC3Dint x, | 801 blink::WGC3Dint x, |
| 784 blink::WGC3Dint y, | 802 blink::WGC3Dint y, |
| 785 blink::WGC3Dsizei width, | 803 blink::WGC3Dsizei width, |
| 786 blink::WGC3Dsizei height); | 804 blink::WGC3Dsizei height); |
| 787 virtual blink::WGC3Dboolean isSampler(blink::WebGLId sampler); | 805 virtual blink::WGC3Dboolean isSampler(blink::WebGLId sampler); |
| 788 // virtual blink::WGC3Dboolean isSync(blink::WebGLId sync); | 806 virtual blink::WGC3Dboolean isSync(blink::WGC3Dsync sync); |
| 789 virtual blink::WGC3Dboolean isTransformFeedback(blink::WGC3Duint id); | 807 virtual blink::WGC3Dboolean isTransformFeedback(blink::WGC3Duint id); |
| 790 virtual void pauseTransformFeedback(void); | 808 virtual void pauseTransformFeedback(void); |
| 791 // virtual void programParameteri(blink::WGC3Duint program, blink::WGC3Denum | 809 //virtual void programParameteri(blink::WGC3Duint program, |
| 792 // pname, | 810 // blink::WGC3Denum pname, |
| 793 // blink::WGC3Dint value); | 811 // blink::WGC3Dint value); |
| 794 virtual void readBuffer(blink::WGC3Denum src); | 812 virtual void readBuffer(blink::WGC3Denum src); |
| 795 virtual void resumeTransformFeedback(void); | 813 virtual void resumeTransformFeedback(void); |
| 796 virtual void samplerParameterf(blink::WGC3Duint sampler, | 814 virtual void samplerParameterf(blink::WGC3Duint sampler, |
| 797 blink::WGC3Denum pname, | 815 blink::WGC3Denum pname, |
| 798 blink::WGC3Dfloat param); | 816 blink::WGC3Dfloat param); |
| 799 virtual void samplerParameterfv(blink::WGC3Duint sampler, | 817 virtual void samplerParameterfv(blink::WGC3Duint sampler, |
| 800 blink::WGC3Denum pname, | 818 blink::WGC3Denum pname, |
| 801 const blink::WGC3Dfloat* param); | 819 const blink::WGC3Dfloat* param); |
| 802 virtual void samplerParameteri(blink::WGC3Duint sampler, | 820 virtual void samplerParameteri(blink::WGC3Duint sampler, |
| 803 blink::WGC3Denum pname, | 821 blink::WGC3Denum pname, |
| (...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 901 blink::WGC3Duint y, | 919 blink::WGC3Duint y, |
| 902 blink::WGC3Duint z, | 920 blink::WGC3Duint z, |
| 903 blink::WGC3Duint w); | 921 blink::WGC3Duint w); |
| 904 virtual void vertexAttribI4uiv(blink::WGC3Duint index, | 922 virtual void vertexAttribI4uiv(blink::WGC3Duint index, |
| 905 const blink::WGC3Duint* v); | 923 const blink::WGC3Duint* v); |
| 906 virtual void vertexAttribIPointer(blink::WGC3Duint index, | 924 virtual void vertexAttribIPointer(blink::WGC3Duint index, |
| 907 blink::WGC3Dint size, | 925 blink::WGC3Dint size, |
| 908 blink::WGC3Denum type, | 926 blink::WGC3Denum type, |
| 909 blink::WGC3Dsizei stride, | 927 blink::WGC3Dsizei stride, |
| 910 blink::WGC3Dintptr pointer); | 928 blink::WGC3Dintptr pointer); |
| 911 // virtual void waitSync(blink::WebGLId sync, blink::WGC3Dbitfield flags, | 929 virtual void waitSync(blink::WGC3Dsync sync, |
| 912 // blink::WGC3Duint64 timeout); | 930 blink::WGC3Dbitfield flags, |
| 931 blink::WGC3Duint64 timeout); |
| 913 | 932 |
| 914 virtual GrGLInterface* createGrGLInterface(); | 933 virtual GrGLInterface* createGrGLInterface(); |
| 915 | 934 |
| 916 ::gpu::gles2::GLES2Interface* GetGLInterface() { | 935 ::gpu::gles2::GLES2Interface* GetGLInterface() { |
| 917 return gl_; | 936 return gl_; |
| 918 } | 937 } |
| 919 | 938 |
| 920 // Convert WebGL context creation attributes into command buffer / EGL size | 939 // Convert WebGL context creation attributes into command buffer / EGL size |
| 921 // requests. | 940 // requests. |
| 922 static void ConvertAttributes( | 941 static void ConvertAttributes( |
| (...skipping 28 matching lines...) Expand all Loading... |
| 951 std::vector<blink::WGC3Denum> synthetic_errors_; | 970 std::vector<blink::WGC3Denum> synthetic_errors_; |
| 952 | 971 |
| 953 ::gpu::gles2::GLES2Interface* gl_; | 972 ::gpu::gles2::GLES2Interface* gl_; |
| 954 bool lose_context_when_out_of_memory_; | 973 bool lose_context_when_out_of_memory_; |
| 955 uint32_t flush_id_; | 974 uint32_t flush_id_; |
| 956 }; | 975 }; |
| 957 | 976 |
| 958 } // namespace gpu_blink | 977 } // namespace gpu_blink |
| 959 | 978 |
| 960 #endif // GPU_BLINK_WEBGRAPHICSCONTEXT3D_IMPL_H_ | 979 #endif // GPU_BLINK_WEBGRAPHICSCONTEXT3D_IMPL_H_ |
| OLD | NEW |