Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 Name | 1 Name |
| 2 | 2 |
| 3 CHROMIUM_sync_point | 3 CHROMIUM_sync_point |
| 4 | 4 |
| 5 Name Strings | 5 Name Strings |
| 6 | 6 |
| 7 GL_CHROMIUM_sync_point | 7 GL_CHROMIUM_sync_point |
| 8 | 8 |
| 9 Version | 9 Version |
| 10 | 10 |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 56 void GenSyncTokenCHROMIUM(uint64 fence_sync, GLbyte *sync_token) | 56 void GenSyncTokenCHROMIUM(uint64 fence_sync, GLbyte *sync_token) |
| 57 | 57 |
| 58 converts <fence_sync> which is only visible to the current context to a | 58 converts <fence_sync> which is only visible to the current context to a |
| 59 sync token which may be waited upon by any contexts on the same server. | 59 sync token which may be waited upon by any contexts on the same server. |
| 60 The <fence_sync> command must be flushed before this function may be | 60 The <fence_sync> command must be flushed before this function may be |
| 61 called, otherwise an INVALID_OPERATION error is generated. The generated | 61 called, otherwise an INVALID_OPERATION error is generated. The generated |
| 62 <sync_token> must be generated on the same context as when | 62 <sync_token> must be generated on the same context as when |
| 63 InsertFenceSyncCHROMIUM was called. The <sync_token> can be passed and | 63 InsertFenceSyncCHROMIUM was called. The <sync_token> can be passed and |
| 64 used by any context on the same server, including other context groups. | 64 used by any context on the same server, including other context groups. |
| 65 | 65 |
| 66 <sync_token> returns a GL_SYNC_POINT_SIZE_CHROMIUM byte sized name. | 66 <sync_token> returns a GL_SYNC_TOKEN_SIZE_CHROMIUM byte sized name. |
| 67 | 67 |
| 68 The command | 68 The command |
| 69 | 69 |
| 70 void GenUnverifiedSyncTokenCHROMIUM(uint64 fence_sync, | 70 void GenUnverifiedSyncTokenCHROMIUM(uint64 fence_sync, |
| 71 GLbyte *sync_token) | 71 GLbyte *sync_token) |
| 72 | 72 |
| 73 converts <fence_sync>, which is only visible to the current context, to a | 73 converts <fence_sync>, which is only visible to the current context, to a |
| 74 sync token, which may be waited upon by a context which only needs flush | 74 sync token, which may be waited upon by a context which only needs flush |
| 75 order guarantee with respect to the fence sync context. For example, if | 75 order guarantee with respect to the fence sync context. For example, if |
| 76 the two contexts are on the same channel but on different streams, flush | 76 the two contexts are on the same channel but on different streams, flush |
| 77 order guarantee is enough to guarantee that the server will receive the | 77 order guarantee is enough to guarantee that the server will receive the |
| 78 release command before the wait command. The <fence_sync> command must be | 78 release command before the wait command. The <fence_sync> command must be |
| 79 flushed before this function may be called, otherwise an INVALID_OPERATION | 79 flushed before this function may be called, otherwise an INVALID_OPERATION |
| 80 error is generated. The generated <sync_token> must be generated on the | 80 error is generated. The generated <sync_token> must be generated on the |
| 81 same context as when InsertFenceSyncCHROMIUM was called. | 81 same context as when InsertFenceSyncCHROMIUM was called. |
| 82 | 82 |
| 83 The command | 83 The command |
| 84 | 84 |
| 85 void WaitSyncTokenCHROMIUM(const GLbyte *sync_token) | 85 void WaitSyncTokenCHROMIUM(const GLbyte *sync_token) |
| 86 | 86 |
| 87 causes the current context to stop submitting commands until the specified | 87 causes the current context to stop submitting commands until the specified |
| 88 fence sync becomes signaled. This is implemented as a server-side wait. | 88 fence sync becomes signaled. This is implemented as a server-side wait. |
| 89 <sync_token> is a sync token generated by GenSyncPointCHROMIUM. If | 89 <sync_token> is a sync token generated by GenSyncPointCHROMIUM. If |
|
David Yen
2015/11/20 17:51:36
s/GenSyncPointCHROMIUM/GenSyncTokenCHROMIUM
| |
| 90 <sync_token> was generated by GenUnverifiedSyncTokenCHROMIUM and the | 90 <sync_token> was generated by GenUnverifiedSyncTokenCHROMIUM and the |
| 91 corresponding fence sync context required more than just flush ordering | 91 corresponding fence sync context required more than just flush ordering |
| 92 to guarantee synchronization, a INVALID_OPERATION error is generated. If | 92 to guarantee synchronization, a INVALID_OPERATION error is generated. If |
| 93 <sync_token> isn't a valid sync token returned by GenSyncPointCHROMIUM or | 93 <sync_token> isn't a valid sync token returned by GenSyncPointCHROMIUM or |
|
David Yen
2015/11/20 17:51:36
s/GenSyncPointCHROMIUM/GenSyncTokenCHROMIUM
| |
| 94 GenUnverifiedSyncTokenCHROMIUM, the result is undefined. | 94 GenUnverifiedSyncTokenCHROMIUM, the result is undefined. |
| 95 | 95 |
| 96 New Tokens | 96 New Tokens |
| 97 | 97 |
| 98 The size of a sync token name in bytes. | 98 The size of a sync token name in bytes. |
| 99 | 99 |
| 100 GL_SYNC_TOKEN_SIZE_CHROMIUM 24 | 100 GL_SYNC_TOKEN_SIZE_CHROMIUM 24 |
| 101 | 101 |
| 102 Errors | 102 Errors |
| 103 | 103 |
| 104 INVALID_VALUE is generated if the <fence_sync> parameter of | 104 INVALID_VALUE is generated if the <fence_sync> parameter of |
| 105 GenSyncPointCHROMIUM is not a valid local fence sync name. | 105 GenSyncPointCHROMIUM is not a valid local fence sync name. |
|
David Yen
2015/11/20 17:51:36
s/GenSyncPointCHROMIUM/GenSyncTokenCHROMIUM
| |
| 106 | 106 |
| 107 INVALID_OPERATION is generated if the <fence_sync> parameter of | 107 INVALID_OPERATION is generated if the <fence_sync> parameter of |
| 108 GenSyncPointCHROMIUM has not been flushed to the server. | 108 GenSyncPointCHROMIUM has not been flushed to the server. |
|
David Yen
2015/11/20 17:51:36
s/GenSyncPointCHROMIUM/GenSyncTokenCHROMIUM
| |
| 109 | 109 |
| 110 INVALID_OPERATION is generated if the <sync_token> parameter of | 110 INVALID_OPERATION is generated if the <sync_token> parameter of |
| 111 WaitSyncTokenCHROMIUM was generated using GenUnverifiedSyncTokenCHROMIUM, | 111 WaitSyncTokenCHROMIUM was generated using GenUnverifiedSyncTokenCHROMIUM, |
| 112 but the two contexts must be synchronized with more than just flush order. | 112 but the two contexts must be synchronized with more than just flush order. |
| 113 | 113 |
| 114 New State | 114 New State |
| 115 | 115 |
| 116 None. | 116 None. |
| 117 | 117 |
| 118 Revision History | 118 Revision History |
| 119 | 119 |
| 120 2/25/2013 Documented the extension | 120 2/25/2013 Documented the extension |
| 121 | 121 |
| 122 9/8/2015 Modified functions InsertFenceSyncCHROMIUM, | 122 9/8/2015 Modified functions InsertFenceSyncCHROMIUM, |
| 123 GenSyncTokenCHROMIUM, and WaitSyncTokenCHROMIUM. | 123 GenSyncTokenCHROMIUM, and WaitSyncTokenCHROMIUM. |
| 124 | 124 |
| 125 10/12/2015 Added function GenUnverifiedSyncTokenCHROMIUM. | 125 10/12/2015 Added function GenUnverifiedSyncTokenCHROMIUM. |
| OLD | NEW |