OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2012 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * | 7 * |
8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
(...skipping 13 matching lines...) Expand all Loading... |
24 */ | 24 */ |
25 | 25 |
26 #ifndef WebExternalTextureLayerClient_h | 26 #ifndef WebExternalTextureLayerClient_h |
27 #define WebExternalTextureLayerClient_h | 27 #define WebExternalTextureLayerClient_h |
28 | 28 |
29 #include "WebCommon.h" | 29 #include "WebCommon.h" |
30 #include "WebSize.h" | 30 #include "WebSize.h" |
31 | 31 |
32 namespace blink { | 32 namespace blink { |
33 | 33 |
34 class WebGraphicsContext3D; | |
35 class WebExternalBitmap; | 34 class WebExternalBitmap; |
36 struct WebExternalTextureMailbox; | 35 struct WebExternalTextureMailbox; |
37 | 36 |
38 class BLINK_PLATFORM_EXPORT WebExternalTextureLayerClient { | 37 class BLINK_PLATFORM_EXPORT WebExternalTextureLayerClient { |
39 public: | 38 public: |
40 // Returns true and provides a mailbox if a new frame is available. If the W
ebExternalBitmap | 39 // Returns true and provides a mailbox if a new frame is available. If the W
ebExternalBitmap |
41 // isn't 0, then it should also be filled in with the contents of this frame
. | 40 // isn't 0, then it should also be filled in with the contents of this frame
. |
42 // Returns false if no new data is available and the old mailbox and bitmap
are to be reused. | 41 // Returns false if no new data is available and the old mailbox and bitmap
are to be reused. |
43 virtual bool prepareMailbox(WebExternalTextureMailbox*, WebExternalBitmap* =
0) = 0; | 42 virtual bool prepareMailbox(WebExternalTextureMailbox*, WebExternalBitmap* =
0) = 0; |
44 | 43 |
45 // Notifies the client when a mailbox is no longer in use by the compositor
and provides | 44 // Notifies the client when a mailbox is no longer in use by the compositor
and provides |
46 // a sync point to wait on before the mailbox could be consumes again by the
client. The | 45 // a sync point to wait on before the mailbox could be consumes again by the
client. The |
47 // boolean flag indicates if the mailbox resource is treated as lost by clie
nt. | 46 // boolean flag indicates if the mailbox resource is treated as lost by clie
nt. |
48 virtual void mailboxReleased(const WebExternalTextureMailbox&, bool lostReso
urce) = 0; | 47 virtual void mailboxReleased(const WebExternalTextureMailbox&, bool lostReso
urce) = 0; |
49 | 48 |
50 protected: | 49 protected: |
51 virtual ~WebExternalTextureLayerClient() { } | 50 virtual ~WebExternalTextureLayerClient() { } |
52 }; | 51 }; |
53 | 52 |
54 } // namespace blink | 53 } // namespace blink |
55 | 54 |
56 #endif // WebExternalTextureLayerClient_h | 55 #endif // WebExternalTextureLayerClient_h |
OLD | NEW |