| OLD | NEW |
| 1 #!/usr/bin/python | 1 #!/usr/bin/python |
| 2 # | 2 # |
| 3 # Copyright (c) 2006-2009 The Chromium Authors. All rights reserved. | 3 # Copyright (c) 2006-2009 The Chromium Authors. All rights reserved. |
| 4 # Use of this source code is governed by a BSD-style license that can be | 4 # Use of this source code is governed by a BSD-style license that can be |
| 5 # found in the LICENSE file. | 5 # found in the LICENSE file. |
| 6 | 6 |
| 7 """code generator for GL command buffers.""" | 7 """code generator for GL command buffers.""" |
| 8 | 8 |
| 9 import os | 9 import os |
| 10 import os.path | 10 import os.path |
| (...skipping 1326 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1337 file.Write(" helper_->%s(%s);\n" % | 1337 file.Write(" helper_->%s(%s);\n" % |
| 1338 (func.name, func.MakeOriginalArgString(""))) | 1338 (func.name, func.MakeOriginalArgString(""))) |
| 1339 file.Write("}\n") | 1339 file.Write("}\n") |
| 1340 file.Write("\n") | 1340 file.Write("\n") |
| 1341 else: | 1341 else: |
| 1342 file.Write("%s %s(%s);\n" % | 1342 file.Write("%s %s(%s);\n" % |
| 1343 (func.return_type, func.original_name, | 1343 (func.return_type, func.original_name, |
| 1344 func.MakeTypedOriginalArgString(""))) | 1344 func.MakeTypedOriginalArgString(""))) |
| 1345 file.Write("\n") | 1345 file.Write("\n") |
| 1346 | 1346 |
| 1347 def WriteGLES2ImplementationImpl(self, func, file): | |
| 1348 """Writes the GLES2 Implemention definition.""" | |
| 1349 if not func.can_auto_generate: | |
| 1350 file.Write("%s GLES2Implementation::%s(%s) {\n" % | |
| 1351 (func.return_type, func.original_name, | |
| 1352 func.MakeTypedOriginalArgString(""))) | |
| 1353 if not func.return_type == "void": | |
| 1354 file.Write(" return 0;\n") | |
| 1355 file.Write("}\n") | |
| 1356 file.Write("\n") | |
| 1357 | |
| 1358 def WriteImmediateCmdComputeSize(self, func, file): | 1347 def WriteImmediateCmdComputeSize(self, func, file): |
| 1359 """Writes the size computation code for the immediate version of a cmd.""" | 1348 """Writes the size computation code for the immediate version of a cmd.""" |
| 1360 file.Write(" static uint32 ComputeSize(uint32 size_in_bytes) {\n") | 1349 file.Write(" static uint32 ComputeSize(uint32 size_in_bytes) {\n") |
| 1361 file.Write(" return static_cast<uint32>(\n") | 1350 file.Write(" return static_cast<uint32>(\n") |
| 1362 file.Write(" sizeof(ValueType) + // NOLINT\n") | 1351 file.Write(" sizeof(ValueType) + // NOLINT\n") |
| 1363 file.Write(" RoundSizeToMultipleOfEntries(size_in_bytes));\n") | 1352 file.Write(" RoundSizeToMultipleOfEntries(size_in_bytes));\n") |
| 1364 file.Write(" }\n") | 1353 file.Write(" }\n") |
| 1365 file.Write("\n") | 1354 file.Write("\n") |
| 1366 | 1355 |
| 1367 def WriteImmediateCmdSetHeader(self, func, file): | 1356 def WriteImmediateCmdSetHeader(self, func, file): |
| (...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1477 file.Write("// TODO(gman): %s\n\n" % func.name) | 1466 file.Write("// TODO(gman): %s\n\n" % func.name) |
| 1478 | 1467 |
| 1479 def WriteServiceImplementation(self, func, file): | 1468 def WriteServiceImplementation(self, func, file): |
| 1480 """Overrriden from TypeHandler.""" | 1469 """Overrriden from TypeHandler.""" |
| 1481 pass | 1470 pass |
| 1482 | 1471 |
| 1483 def WriteImmediateServiceImplementation(self, func, file): | 1472 def WriteImmediateServiceImplementation(self, func, file): |
| 1484 """Overrriden from TypeHandler.""" | 1473 """Overrriden from TypeHandler.""" |
| 1485 pass | 1474 pass |
| 1486 | 1475 |
| 1487 def WriteGLES2ImplementationImpl(self, func, file): | |
| 1488 """Overrriden from TypeHandler.""" | |
| 1489 pass | |
| 1490 | |
| 1491 def WriteImmediateCmdHelper(self, func, file): | 1476 def WriteImmediateCmdHelper(self, func, file): |
| 1492 """Overrriden from TypeHandler.""" | 1477 """Overrriden from TypeHandler.""" |
| 1493 pass | 1478 pass |
| 1494 | 1479 |
| 1495 def WriteCmdHelper(self, func, file): | 1480 def WriteCmdHelper(self, func, file): |
| 1496 """Overrriden from TypeHandler.""" | 1481 """Overrriden from TypeHandler.""" |
| 1497 pass | 1482 pass |
| 1498 | 1483 |
| 1499 def WriteFormatTest(self, func, file): | 1484 def WriteFormatTest(self, func, file): |
| 1500 """Overrriden from TypeHandler.""" | 1485 """Overrriden from TypeHandler.""" |
| (...skipping 30 matching lines...) Expand all Loading... |
| 1531 """Overrriden from TypeHandler.""" | 1516 """Overrriden from TypeHandler.""" |
| 1532 file.Write("// TODO(gman): Implement test for %s\n" % func.name) | 1517 file.Write("// TODO(gman): Implement test for %s\n" % func.name) |
| 1533 | 1518 |
| 1534 def WriteGLES2ImplementationHeader(self, func, file): | 1519 def WriteGLES2ImplementationHeader(self, func, file): |
| 1535 """Overrriden from TypeHandler.""" | 1520 """Overrriden from TypeHandler.""" |
| 1536 file.Write("%s %s(%s);\n" % | 1521 file.Write("%s %s(%s);\n" % |
| 1537 (func.return_type, func.original_name, | 1522 (func.return_type, func.original_name, |
| 1538 func.MakeTypedOriginalArgString(""))) | 1523 func.MakeTypedOriginalArgString(""))) |
| 1539 file.Write("\n") | 1524 file.Write("\n") |
| 1540 | 1525 |
| 1541 def WriteGLES2ImplementationImpl(self, func, file): | |
| 1542 """Overrriden from TypeHandler.""" | |
| 1543 pass | |
| 1544 | |
| 1545 def WriteImmediateCmdGetTotalSize(self, func, file): | 1526 def WriteImmediateCmdGetTotalSize(self, func, file): |
| 1546 """Overrriden from TypeHandler.""" | 1527 """Overrriden from TypeHandler.""" |
| 1547 # TODO(gman): Move this data to _FUNCTION_INFO? | 1528 # TODO(gman): Move this data to _FUNCTION_INFO? |
| 1548 if func.name == 'ShaderSourceImmediate': | 1529 if func.name == 'ShaderSourceImmediate': |
| 1549 file.Write(" uint32 total_size = ComputeSize(_data_size);\n") | 1530 file.Write(" uint32 total_size = ComputeSize(_data_size);\n") |
| 1550 else: | 1531 else: |
| 1551 CustomHandler.WriteImmediateCmdGetTotalSize(self, func, file) | 1532 CustomHandler.WriteImmediateCmdGetTotalSize(self, func, file) |
| 1552 | 1533 |
| 1553 | 1534 |
| 1554 class DataHandler(TypeHandler): | 1535 class DataHandler(TypeHandler): |
| (...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1639 "cmd, total_size);\n") | 1620 "cmd, total_size);\n") |
| 1640 file.Write(" }\n") | 1621 file.Write(" }\n") |
| 1641 file.Write("\n") | 1622 file.Write("\n") |
| 1642 | 1623 |
| 1643 def WriteImmediateFormatTest(self, func, file): | 1624 def WriteImmediateFormatTest(self, func, file): |
| 1644 """Overrriden from TypeHandler.""" | 1625 """Overrriden from TypeHandler.""" |
| 1645 # TODO(gman): Remove this exception. | 1626 # TODO(gman): Remove this exception. |
| 1646 file.Write("// TODO(gman): Implement test for %s\n" % func.name) | 1627 file.Write("// TODO(gman): Implement test for %s\n" % func.name) |
| 1647 return | 1628 return |
| 1648 | 1629 |
| 1649 def WriteGLES2ImplementationImpl(self, func, file): | |
| 1650 """Overrriden from TypeHandler.""" | |
| 1651 pass | |
| 1652 | |
| 1653 def WriteServiceUnitTest(self, func, file): | 1630 def WriteServiceUnitTest(self, func, file): |
| 1654 """Overrriden from TypeHandler.""" | 1631 """Overrriden from TypeHandler.""" |
| 1655 file.Write("// TODO(gman): %s\n\n" % func.name) | 1632 file.Write("// TODO(gman): %s\n\n" % func.name) |
| 1656 | 1633 |
| 1657 def WriteImmediateServiceUnitTest(self, func, file): | 1634 def WriteImmediateServiceUnitTest(self, func, file): |
| 1658 """Overrriden from TypeHandler.""" | 1635 """Overrriden from TypeHandler.""" |
| 1659 file.Write("// TODO(gman): %s\n\n" % func.name) | 1636 file.Write("// TODO(gman): %s\n\n" % func.name) |
| 1660 | 1637 |
| 1661 | 1638 |
| 1662 class GENnHandler(TypeHandler): | 1639 class GENnHandler(TypeHandler): |
| (...skipping 28 matching lines...) Expand all Loading... |
| 1691 """Overrriden from TypeHandler.""" | 1668 """Overrriden from TypeHandler.""" |
| 1692 file.Write("%s %s(%s) {\n" % | 1669 file.Write("%s %s(%s) {\n" % |
| 1693 (func.return_type, func.original_name, | 1670 (func.return_type, func.original_name, |
| 1694 func.MakeTypedOriginalArgString(""))) | 1671 func.MakeTypedOriginalArgString(""))) |
| 1695 file.Write(" MakeIds(%s);\n" % func.MakeOriginalArgString("")) | 1672 file.Write(" MakeIds(%s);\n" % func.MakeOriginalArgString("")) |
| 1696 file.Write(" helper_->%sImmediate(%s);\n" % | 1673 file.Write(" helper_->%sImmediate(%s);\n" % |
| 1697 (func.name, func.MakeOriginalArgString(""))) | 1674 (func.name, func.MakeOriginalArgString(""))) |
| 1698 file.Write("}\n") | 1675 file.Write("}\n") |
| 1699 file.Write("\n") | 1676 file.Write("\n") |
| 1700 | 1677 |
| 1701 def WriteGLES2ImplementationImpl(self, func, file): | |
| 1702 """Overrriden from TypeHandler.""" | |
| 1703 pass | |
| 1704 | |
| 1705 def WriteServiceUnitTest(self, func, file): | 1678 def WriteServiceUnitTest(self, func, file): |
| 1706 """Overrriden from TypeHandler.""" | 1679 """Overrriden from TypeHandler.""" |
| 1707 valid_test = """ | 1680 valid_test = """ |
| 1708 TEST_F(GLES2DecoderTest, %(name)sValidArgs) { | 1681 TEST_F(GLES2DecoderTest, %(name)sValidArgs) { |
| 1709 EXPECT_CALL(*gl_, %(gl_func_name)s(1, _)) | 1682 EXPECT_CALL(*gl_, %(gl_func_name)s(1, _)) |
| 1710 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); | 1683 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); |
| 1711 GetSharedMemoryAs<GLuint*>()[0] = kNewClientId; | 1684 GetSharedMemoryAs<GLuint*>()[0] = kNewClientId; |
| 1712 SpecializedSetup<%(name)s, 0>(); | 1685 SpecializedSetup<%(name)s, 0>(); |
| 1713 %(name)s cmd; | 1686 %(name)s cmd; |
| 1714 cmd.Init(%(args)s); | 1687 cmd.Init(%(args)s); |
| (...skipping 197 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1912 (func.return_type, func.original_name, | 1885 (func.return_type, func.original_name, |
| 1913 func.MakeTypedOriginalArgString(""))) | 1886 func.MakeTypedOriginalArgString(""))) |
| 1914 file.Write(" GLuint client_id;\n") | 1887 file.Write(" GLuint client_id;\n") |
| 1915 file.Write(" MakeIds(1, &client_id);\n") | 1888 file.Write(" MakeIds(1, &client_id);\n") |
| 1916 file.Write(" helper_->%s(%s);\n" % | 1889 file.Write(" helper_->%s(%s);\n" % |
| 1917 (func.name, func.MakeCmdArgString(""))) | 1890 (func.name, func.MakeCmdArgString(""))) |
| 1918 file.Write(" return client_id;\n") | 1891 file.Write(" return client_id;\n") |
| 1919 file.Write("}\n") | 1892 file.Write("}\n") |
| 1920 file.Write("\n") | 1893 file.Write("\n") |
| 1921 | 1894 |
| 1922 def WriteGLES2ImplementationImpl(self, func, file): | |
| 1923 """Overrriden from TypeHandler.""" | |
| 1924 pass | |
| 1925 | |
| 1926 | 1895 |
| 1927 class DELnHandler(TypeHandler): | 1896 class DELnHandler(TypeHandler): |
| 1928 """Handler for glDelete___ type functions.""" | 1897 """Handler for glDelete___ type functions.""" |
| 1929 | 1898 |
| 1930 def __init__(self): | 1899 def __init__(self): |
| 1931 TypeHandler.__init__(self) | 1900 TypeHandler.__init__(self) |
| 1932 | 1901 |
| 1933 def WriteGetDataSizeCode(self, func, file): | 1902 def WriteGetDataSizeCode(self, func, file): |
| 1934 """Overrriden from TypeHandler.""" | 1903 """Overrriden from TypeHandler.""" |
| 1935 file.Write(" uint32 data_size = n * sizeof(GLuint);\n") | 1904 file.Write(" uint32 data_size = n * sizeof(GLuint);\n") |
| (...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2017 """Overrriden from TypeHandler.""" | 1986 """Overrriden from TypeHandler.""" |
| 2018 file.Write("%s %s(%s) {\n" % | 1987 file.Write("%s %s(%s) {\n" % |
| 2019 (func.return_type, func.original_name, | 1988 (func.return_type, func.original_name, |
| 2020 func.MakeTypedOriginalArgString(""))) | 1989 func.MakeTypedOriginalArgString(""))) |
| 2021 file.Write(" FreeIds(%s);\n" % func.MakeOriginalArgString("")) | 1990 file.Write(" FreeIds(%s);\n" % func.MakeOriginalArgString("")) |
| 2022 file.Write(" helper_->%sImmediate(%s);\n" % | 1991 file.Write(" helper_->%sImmediate(%s);\n" % |
| 2023 (func.name, func.MakeOriginalArgString(""))) | 1992 (func.name, func.MakeOriginalArgString(""))) |
| 2024 file.Write("}\n") | 1993 file.Write("}\n") |
| 2025 file.Write("\n") | 1994 file.Write("\n") |
| 2026 | 1995 |
| 2027 def WriteGLES2ImplementationImpl(self, func, file): | |
| 2028 """Overrriden from TypeHandler.""" | |
| 2029 pass | |
| 2030 | |
| 2031 def WriteImmediateCmdComputeSize(self, func, file): | 1996 def WriteImmediateCmdComputeSize(self, func, file): |
| 2032 """Overrriden from TypeHandler.""" | 1997 """Overrriden from TypeHandler.""" |
| 2033 file.Write(" static uint32 ComputeDataSize(GLsizei n) {\n") | 1998 file.Write(" static uint32 ComputeDataSize(GLsizei n) {\n") |
| 2034 file.Write( | 1999 file.Write( |
| 2035 " return static_cast<uint32>(sizeof(GLuint) * n); // NOLINT\n") | 2000 " return static_cast<uint32>(sizeof(GLuint) * n); // NOLINT\n") |
| 2036 file.Write(" }\n") | 2001 file.Write(" }\n") |
| 2037 file.Write("\n") | 2002 file.Write("\n") |
| 2038 file.Write(" static uint32 ComputeSize(GLsizei n) {\n") | 2003 file.Write(" static uint32 ComputeSize(GLsizei n) {\n") |
| 2039 file.Write(" return static_cast<uint32>(\n") | 2004 file.Write(" return static_cast<uint32>(\n") |
| 2040 file.Write(" sizeof(ValueType) + ComputeDataSize(n)); // NOLINT\n") | 2005 file.Write(" sizeof(ValueType) + ComputeDataSize(n)); // NOLINT\n") |
| (...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2170 (func.name, arg_string)) | 2135 (func.name, arg_string)) |
| 2171 file.Write(" WaitForCmd();\n") | 2136 file.Write(" WaitForCmd();\n") |
| 2172 file.Write(" GLsizei num_values = util_.GLGetNumValuesReturned(pname);\n") | 2137 file.Write(" GLsizei num_values = util_.GLGetNumValuesReturned(pname);\n") |
| 2173 file.Write( | 2138 file.Write( |
| 2174 " DCHECK_LE(num_values * sizeof(*params), kMaxSizeOfSimpleResult);\n") | 2139 " DCHECK_LE(num_values * sizeof(*params), kMaxSizeOfSimpleResult);\n") |
| 2175 file.Write( | 2140 file.Write( |
| 2176 " memcpy(params, result_buffer_, num_values * sizeof(*params));\n") | 2141 " memcpy(params, result_buffer_, num_values * sizeof(*params));\n") |
| 2177 file.Write("}\n") | 2142 file.Write("}\n") |
| 2178 file.Write("\n") | 2143 file.Write("\n") |
| 2179 | 2144 |
| 2180 def WriteGLES2ImplementationImpl(self, func, file): | |
| 2181 """Overrriden from TypeHandler.""" | |
| 2182 pass | |
| 2183 | |
| 2184 | 2145 |
| 2185 class PUTHandler(TypeHandler): | 2146 class PUTHandler(TypeHandler): |
| 2186 """Handler for glTexParameter_v, glVertexAttrib_v functions.""" | 2147 """Handler for glTexParameter_v, glVertexAttrib_v functions.""" |
| 2187 | 2148 |
| 2188 def __init__(self): | 2149 def __init__(self): |
| 2189 TypeHandler.__init__(self) | 2150 TypeHandler.__init__(self) |
| 2190 | 2151 |
| 2191 def WriteImmediateServiceUnitTest(self, func, file): | 2152 def WriteImmediateServiceUnitTest(self, func, file): |
| 2192 """Writes the service unit test for a command.""" | 2153 """Writes the service unit test for a command.""" |
| 2193 valid_test = """ | 2154 valid_test = """ |
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2241 def WriteGLES2ImplementationHeader(self, func, file): | 2202 def WriteGLES2ImplementationHeader(self, func, file): |
| 2242 """Overrriden from TypeHandler.""" | 2203 """Overrriden from TypeHandler.""" |
| 2243 file.Write("%s %s(%s) {\n" % | 2204 file.Write("%s %s(%s) {\n" % |
| 2244 (func.return_type, func.original_name, | 2205 (func.return_type, func.original_name, |
| 2245 func.MakeTypedOriginalArgString(""))) | 2206 func.MakeTypedOriginalArgString(""))) |
| 2246 file.Write(" helper_->%sImmediate(%s);\n" % | 2207 file.Write(" helper_->%sImmediate(%s);\n" % |
| 2247 (func.name, func.MakeOriginalArgString(""))) | 2208 (func.name, func.MakeOriginalArgString(""))) |
| 2248 file.Write("}\n") | 2209 file.Write("}\n") |
| 2249 file.Write("\n") | 2210 file.Write("\n") |
| 2250 | 2211 |
| 2251 def WriteGLES2ImplementationImpl(self, func, file): | |
| 2252 """Overrriden from TypeHandler.""" | |
| 2253 pass | |
| 2254 | |
| 2255 def WriteImmediateCmdComputeSize(self, func, file): | 2212 def WriteImmediateCmdComputeSize(self, func, file): |
| 2256 """Overrriden from TypeHandler.""" | 2213 """Overrriden from TypeHandler.""" |
| 2257 file.Write(" static uint32 ComputeDataSize() {\n") | 2214 file.Write(" static uint32 ComputeDataSize() {\n") |
| 2258 file.Write(" return static_cast<uint32>(\n") | 2215 file.Write(" return static_cast<uint32>(\n") |
| 2259 file.Write(" sizeof(%s) * %d); // NOLINT\n" % | 2216 file.Write(" sizeof(%s) * %d); // NOLINT\n" % |
| 2260 (func.info.data_type, func.info.count)) | 2217 (func.info.data_type, func.info.count)) |
| 2261 file.Write(" }\n") | 2218 file.Write(" }\n") |
| 2262 file.Write("\n") | 2219 file.Write("\n") |
| 2263 file.Write(" static uint32 ComputeSize() {\n") | 2220 file.Write(" static uint32 ComputeSize() {\n") |
| 2264 file.Write(" return static_cast<uint32>(\n") | 2221 file.Write(" return static_cast<uint32>(\n") |
| (...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2416 def WriteGLES2ImplementationHeader(self, func, file): | 2373 def WriteGLES2ImplementationHeader(self, func, file): |
| 2417 """Overrriden from TypeHandler.""" | 2374 """Overrriden from TypeHandler.""" |
| 2418 file.Write("%s %s(%s) {\n" % | 2375 file.Write("%s %s(%s) {\n" % |
| 2419 (func.return_type, func.original_name, | 2376 (func.return_type, func.original_name, |
| 2420 func.MakeTypedOriginalArgString(""))) | 2377 func.MakeTypedOriginalArgString(""))) |
| 2421 file.Write(" helper_->%sImmediate(%s);\n" % | 2378 file.Write(" helper_->%sImmediate(%s);\n" % |
| 2422 (func.name, func.MakeOriginalArgString(""))) | 2379 (func.name, func.MakeOriginalArgString(""))) |
| 2423 file.Write("}\n") | 2380 file.Write("}\n") |
| 2424 file.Write("\n") | 2381 file.Write("\n") |
| 2425 | 2382 |
| 2426 def WriteGLES2ImplementationImpl(self, func, file): | |
| 2427 """Overrriden from TypeHandler.""" | |
| 2428 pass | |
| 2429 | |
| 2430 def WriteImmediateCmdComputeSize(self, func, file): | 2383 def WriteImmediateCmdComputeSize(self, func, file): |
| 2431 """Overrriden from TypeHandler.""" | 2384 """Overrriden from TypeHandler.""" |
| 2432 file.Write(" static uint32 ComputeDataSize(GLsizei count) {\n") | 2385 file.Write(" static uint32 ComputeDataSize(GLsizei count) {\n") |
| 2433 file.Write(" return static_cast<uint32>(\n") | 2386 file.Write(" return static_cast<uint32>(\n") |
| 2434 file.Write(" sizeof(%s) * %d * count); // NOLINT\n" % | 2387 file.Write(" sizeof(%s) * %d * count); // NOLINT\n" % |
| 2435 (func.info.data_type, func.info.count)) | 2388 (func.info.data_type, func.info.count)) |
| 2436 file.Write(" }\n") | 2389 file.Write(" }\n") |
| 2437 file.Write("\n") | 2390 file.Write("\n") |
| 2438 file.Write(" static uint32 ComputeSize(GLsizei count) {\n") | 2391 file.Write(" static uint32 ComputeSize(GLsizei count) {\n") |
| 2439 file.Write(" return static_cast<uint32>(\n") | 2392 file.Write(" return static_cast<uint32>(\n") |
| (...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2605 """Overrriden from TypeHandler.""" | 2558 """Overrriden from TypeHandler.""" |
| 2606 file.Write("%s %s(%s) {\n" % | 2559 file.Write("%s %s(%s) {\n" % |
| 2607 (func.return_type, func.original_name, | 2560 (func.return_type, func.original_name, |
| 2608 func.MakeTypedOriginalArgString(""))) | 2561 func.MakeTypedOriginalArgString(""))) |
| 2609 file.Write(" // TODO(gman): This needs to change to use SendString.\n") | 2562 file.Write(" // TODO(gman): This needs to change to use SendString.\n") |
| 2610 file.Write(" helper_->%sImmediate(%s);\n" % | 2563 file.Write(" helper_->%sImmediate(%s);\n" % |
| 2611 (func.name, func.MakeOriginalArgString(""))) | 2564 (func.name, func.MakeOriginalArgString(""))) |
| 2612 file.Write("}\n") | 2565 file.Write("}\n") |
| 2613 file.Write("\n") | 2566 file.Write("\n") |
| 2614 | 2567 |
| 2615 def WriteGLES2ImplementationImpl(self, func, file): | |
| 2616 """Overrriden from TypeHandler.""" | |
| 2617 pass | |
| 2618 | |
| 2619 def WriteImmediateCmdComputeSize(self, func, file): | 2568 def WriteImmediateCmdComputeSize(self, func, file): |
| 2620 """Overrriden from TypeHandler.""" | 2569 """Overrriden from TypeHandler.""" |
| 2621 file.Write(" static uint32 ComputeSize(uint32 data_size) {\n") | 2570 file.Write(" static uint32 ComputeSize(uint32 data_size) {\n") |
| 2622 file.Write(" return static_cast<uint32>(\n") | 2571 file.Write(" return static_cast<uint32>(\n") |
| 2623 file.Write(" sizeof(ValueType) + data_size); // NOLINT\n") | 2572 file.Write(" sizeof(ValueType) + data_size); // NOLINT\n") |
| 2624 file.Write(" }\n") | 2573 file.Write(" }\n") |
| 2625 | 2574 |
| 2626 def WriteImmediateCmdSetHeader(self, func, file): | 2575 def WriteImmediateCmdSetHeader(self, func, file): |
| 2627 """Overrriden from TypeHandler.""" | 2576 """Overrriden from TypeHandler.""" |
| 2628 code = """ | 2577 code = """ |
| (...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2803 file.Write(" GLint* result = shared_memory_.GetAddressAs<GLint*>(0);\n") | 2752 file.Write(" GLint* result = shared_memory_.GetAddressAs<GLint*>(0);\n") |
| 2804 file.Write(" DCHECK(false); // pass in shared memory\n") | 2753 file.Write(" DCHECK(false); // pass in shared memory\n") |
| 2805 file.Write(" helper_->%sImmediate(%s);\n" % | 2754 file.Write(" helper_->%sImmediate(%s);\n" % |
| 2806 (func.name, func.MakeOriginalArgString(""))) | 2755 (func.name, func.MakeOriginalArgString(""))) |
| 2807 file.Write(" int32 token = helper_->InsertToken();\n") | 2756 file.Write(" int32 token = helper_->InsertToken();\n") |
| 2808 file.Write(" helper_->WaitForToken(token);\n") | 2757 file.Write(" helper_->WaitForToken(token);\n") |
| 2809 file.Write(" return *result;\n") | 2758 file.Write(" return *result;\n") |
| 2810 file.Write("}\n") | 2759 file.Write("}\n") |
| 2811 file.Write("\n") | 2760 file.Write("\n") |
| 2812 | 2761 |
| 2813 def WriteGLES2ImplementationImpl(self, func, file): | |
| 2814 """Overrriden from TypeHandler.""" | |
| 2815 pass | |
| 2816 | |
| 2817 def WriteImmediateCmdComputeSize(self, func, file): | 2762 def WriteImmediateCmdComputeSize(self, func, file): |
| 2818 """Overrriden from TypeHandler.""" | 2763 """Overrriden from TypeHandler.""" |
| 2819 file.Write(" static uint32 ComputeDataSize(const char* s) {\n") | 2764 file.Write(" static uint32 ComputeDataSize(const char* s) {\n") |
| 2820 file.Write(" return strlen(s);\n") | 2765 file.Write(" return strlen(s);\n") |
| 2821 file.Write(" }\n") | 2766 file.Write(" }\n") |
| 2822 file.Write("\n") | 2767 file.Write("\n") |
| 2823 file.Write(" static uint32 ComputeSize(const char* s) {\n") | 2768 file.Write(" static uint32 ComputeSize(const char* s) {\n") |
| 2824 file.Write(" return static_cast<uint32>(\n") | 2769 file.Write(" return static_cast<uint32>(\n") |
| 2825 file.Write(" sizeof(ValueType) + ComputeDataSize(s)); // NOLINT\n") | 2770 file.Write(" sizeof(ValueType) + ComputeDataSize(s)); // NOLINT\n") |
| 2826 file.Write(" }\n") | 2771 file.Write(" }\n") |
| (...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2973 if len(arg_string) > 0: | 2918 if len(arg_string) > 0: |
| 2974 comma = ", " | 2919 comma = ", " |
| 2975 file.Write(" helper_->%s(%s%sresult_shm_id(), result_shm_offset());\n" % | 2920 file.Write(" helper_->%s(%s%sresult_shm_id(), result_shm_offset());\n" % |
| 2976 (func.name, arg_string, comma)) | 2921 (func.name, arg_string, comma)) |
| 2977 file.Write(" WaitForCmd();\n") | 2922 file.Write(" WaitForCmd();\n") |
| 2978 file.Write(" return GetResultAs<%s>();\n" % | 2923 file.Write(" return GetResultAs<%s>();\n" % |
| 2979 func.return_type) | 2924 func.return_type) |
| 2980 file.Write("}\n") | 2925 file.Write("}\n") |
| 2981 file.Write("\n") | 2926 file.Write("\n") |
| 2982 | 2927 |
| 2983 def WriteGLES2ImplementationImpl(self, func, file): | |
| 2984 """Overrriden from TypeHandler.""" | |
| 2985 pass | |
| 2986 | |
| 2987 | 2928 |
| 2988 class STRnHandler(TypeHandler): | 2929 class STRnHandler(TypeHandler): |
| 2989 """Handler for GetProgramInfoLog, GetShaderInfoLog and GetShaderSource.""" | 2930 """Handler for GetProgramInfoLog, GetShaderInfoLog and GetShaderSource.""" |
| 2990 | 2931 |
| 2991 def __init__(self): | 2932 def __init__(self): |
| 2992 TypeHandler.__init__(self) | 2933 TypeHandler.__init__(self) |
| 2993 | 2934 |
| 2994 def WriteGLES2ImplementationHeader(self, func, file): | 2935 def WriteGLES2ImplementationHeader(self, func, file): |
| 2995 """Overrriden from TypeHandler.""" | 2936 """Overrriden from TypeHandler.""" |
| 2996 file.Write("// TODO(gman): Implement this\n") | 2937 file.Write("// TODO(gman): Implement this\n") |
| (...skipping 507 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3504 self.type_handler.WriteServiceImplementation(self, file) | 3445 self.type_handler.WriteServiceImplementation(self, file) |
| 3505 | 3446 |
| 3506 def WriteServiceUnitTest(self, file): | 3447 def WriteServiceUnitTest(self, file): |
| 3507 """Writes the service implementation for a command.""" | 3448 """Writes the service implementation for a command.""" |
| 3508 self.type_handler.WriteServiceUnitTest(self, file) | 3449 self.type_handler.WriteServiceUnitTest(self, file) |
| 3509 | 3450 |
| 3510 def WriteGLES2ImplementationHeader(self, file): | 3451 def WriteGLES2ImplementationHeader(self, file): |
| 3511 """Writes the GLES2 Implemention declaration.""" | 3452 """Writes the GLES2 Implemention declaration.""" |
| 3512 self.type_handler.WriteGLES2ImplementationHeader(self, file) | 3453 self.type_handler.WriteGLES2ImplementationHeader(self, file) |
| 3513 | 3454 |
| 3514 def WriteGLES2ImplementationImpl(self, file): | |
| 3515 """Writes the GLES2 Implemention definition.""" | |
| 3516 self.type_handler.WriteGLES2ImplementationImpl(self, file) | |
| 3517 | |
| 3518 def WriteFormatTest(self, file): | 3455 def WriteFormatTest(self, file): |
| 3519 """Writes the cmd's format test.""" | 3456 """Writes the cmd's format test.""" |
| 3520 self.type_handler.WriteFormatTest(self, file) | 3457 self.type_handler.WriteFormatTest(self, file) |
| 3521 | 3458 |
| 3522 | 3459 |
| 3523 class ImmediateFunction(Function): | 3460 class ImmediateFunction(Function): |
| 3524 """A class that represnets an immediate function command.""" | 3461 """A class that represnets an immediate function command.""" |
| 3525 | 3462 |
| 3526 def __init__(self, func): | 3463 def __init__(self, func): |
| 3527 new_args = [] | 3464 new_args = [] |
| (...skipping 362 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3890 def WriteGLES2ImplementationHeader(self, filename): | 3827 def WriteGLES2ImplementationHeader(self, filename): |
| 3891 """Writes the GLES2 helper header.""" | 3828 """Writes the GLES2 helper header.""" |
| 3892 file = CHeaderWriter( | 3829 file = CHeaderWriter( |
| 3893 filename, | 3830 filename, |
| 3894 "// This file is included by gles2_implementation.h to declare the\n" | 3831 "// This file is included by gles2_implementation.h to declare the\n" |
| 3895 "// GL api functions.\n") | 3832 "// GL api functions.\n") |
| 3896 for func in self.original_functions: | 3833 for func in self.original_functions: |
| 3897 func.WriteGLES2ImplementationHeader(file) | 3834 func.WriteGLES2ImplementationHeader(file) |
| 3898 file.Close() | 3835 file.Close() |
| 3899 | 3836 |
| 3900 def WriteGLES2ImplementationImpl(self, filename): | |
| 3901 """Writes the gles2 helper implementation.""" | |
| 3902 file = CHeaderWriter( | |
| 3903 filename, | |
| 3904 "// A class to emluate GLES2 over command buffers.\n") | |
| 3905 file.Write( | |
| 3906 "#include \"gpu/command_buffer/client/gles2_implementation.h\"\n") | |
| 3907 self.WriteNamespaceOpen(file) | |
| 3908 for func in self.original_functions: | |
| 3909 func.WriteGLES2ImplementationImpl(file) | |
| 3910 file.Write("\n") | |
| 3911 | |
| 3912 self.WriteNamespaceClose(file) | |
| 3913 file.Close() | |
| 3914 | |
| 3915 def WriteServiceUtilsHeader(self, filename): | 3837 def WriteServiceUtilsHeader(self, filename): |
| 3916 """Writes the gles2 auto generated utility header.""" | 3838 """Writes the gles2 auto generated utility header.""" |
| 3917 file = CHeaderWriter(filename) | 3839 file = CHeaderWriter(filename) |
| 3918 for enum in _ENUM_LISTS: | 3840 for enum in _ENUM_LISTS: |
| 3919 file.Write("bool Validate%s%s(GLenum value);\n" % (_ENUM_LISTS[enum]['type
'], enum)) | 3841 file.Write("bool Validate%s%s(GLenum value);\n" % (_ENUM_LISTS[enum]['type
'], enum)) |
| 3920 file.Write("\n") | 3842 file.Write("\n") |
| 3921 file.Close() | 3843 file.Close() |
| 3922 | 3844 |
| 3923 def WriteServiceUtilsImplementation(self, filename): | 3845 def WriteServiceUtilsImplementation(self, filename): |
| 3924 """Writes the gles2 auto generated utility implementation.""" | 3846 """Writes the gles2 auto generated utility implementation.""" |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3959 gen.WriteFormatTest("common/gles2_cmd_format_test_autogen.h") | 3881 gen.WriteFormatTest("common/gles2_cmd_format_test_autogen.h") |
| 3960 gen.WriteGLES2ImplementationHeader("client/gles2_implementation_autogen.h") | 3882 gen.WriteGLES2ImplementationHeader("client/gles2_implementation_autogen.h") |
| 3961 gen.WriteGLES2CLibImplementation("client/gles2_c_lib_autogen.h") | 3883 gen.WriteGLES2CLibImplementation("client/gles2_c_lib_autogen.h") |
| 3962 gen.WriteCmdHelperHeader("client/gles2_cmd_helper_autogen.h") | 3884 gen.WriteCmdHelperHeader("client/gles2_cmd_helper_autogen.h") |
| 3963 gen.WriteServiceImplementation("service/gles2_cmd_decoder_autogen.h") | 3885 gen.WriteServiceImplementation("service/gles2_cmd_decoder_autogen.h") |
| 3964 gen.WriteServiceUnitTests("service/gles2_cmd_decoder_unittest_autogen.h") | 3886 gen.WriteServiceUnitTests("service/gles2_cmd_decoder_unittest_autogen.h") |
| 3965 gen.WriteServiceUtilsHeader("service/gles2_cmd_validation_autogen.h") | 3887 gen.WriteServiceUtilsHeader("service/gles2_cmd_validation_autogen.h") |
| 3966 gen.WriteServiceUtilsImplementation( | 3888 gen.WriteServiceUtilsImplementation( |
| 3967 "service/gles2_cmd_validation_implementation_autogen.h") | 3889 "service/gles2_cmd_validation_implementation_autogen.h") |
| 3968 | 3890 |
| 3969 if options.generate_implementation_templates: | |
| 3970 gen.WriteGLES2ImplementationImpl("client/gles2_implementation_gen.h") | |
| 3971 | |
| 3972 if options.generate_command_id_tests: | 3891 if options.generate_command_id_tests: |
| 3973 gen.WriteCommandIdTest("common/gles2_cmd_id_test_autogen.h") | 3892 gen.WriteCommandIdTest("common/gles2_cmd_id_test_autogen.h") |
| 3974 | 3893 |
| 3975 if gen.errors > 0: | 3894 if gen.errors > 0: |
| 3976 print "%d errors" % gen.errors | 3895 print "%d errors" % gen.errors |
| 3977 sys.exit(1) | 3896 sys.exit(1) |
| 3978 | 3897 |
| 3979 if __name__ == '__main__': | 3898 if __name__ == '__main__': |
| 3980 main(sys.argv[1:]) | 3899 main(sys.argv[1:]) |
| OLD | NEW |