OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2006 Apple Computer, Inc. All rights reserved. | 2 * Copyright (C) 2006 Apple Computer, Inc. All rights reserved. |
3 * Copyright (C) Research In Motion Limited 2009-2010. All rights reserved. | 3 * Copyright (C) Research In Motion Limited 2009-2010. All rights reserved. |
4 * | 4 * |
5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
6 * modification, are permitted provided that the following conditions | 6 * modification, are permitted provided that the following conditions |
7 * are met: | 7 * are met: |
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 10 matching lines...) Expand all Loading... |
21 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY | 21 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY |
22 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 22 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
23 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 23 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
24 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 24 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
25 */ | 25 */ |
26 | 26 |
27 #ifndef SharedBuffer_h | 27 #ifndef SharedBuffer_h |
28 #define SharedBuffer_h | 28 #define SharedBuffer_h |
29 | 29 |
30 #include "wtf/ArrayBuffer.h" | 30 #include "wtf/ArrayBuffer.h" |
31 #include <wtf/Forward.h> | 31 #include "wtf/Forward.h" |
32 #include <wtf/OwnPtr.h> | 32 #include "wtf/OwnPtr.h" |
33 #include <wtf/RefCounted.h> | 33 #include "wtf/RefCounted.h" |
34 #include <wtf/Vector.h> | 34 #include "wtf/Vector.h" |
35 #include <wtf/text/WTFString.h> | 35 #include "wtf/text/WTFString.h" |
36 | 36 |
37 namespace WebCore { | 37 namespace WebCore { |
38 | 38 |
39 class PurgeableBuffer; | 39 class PurgeableBuffer; |
40 | 40 |
41 class SharedBuffer : public RefCounted<SharedBuffer> { | 41 class SharedBuffer : public RefCounted<SharedBuffer> { |
42 public: | 42 public: |
43 static PassRefPtr<SharedBuffer> create() { return adoptRef(new SharedBuffer)
; } | 43 static PassRefPtr<SharedBuffer> create() { return adoptRef(new SharedBuffer)
; } |
44 static PassRefPtr<SharedBuffer> create(size_t size) { return adoptRef(new Sh
aredBuffer(size)); } | 44 static PassRefPtr<SharedBuffer> create(size_t size) { return adoptRef(new Sh
aredBuffer(size)); } |
45 static PassRefPtr<SharedBuffer> create(const char* c, int i) { return adoptR
ef(new SharedBuffer(c, i)); } | 45 static PassRefPtr<SharedBuffer> create(const char* c, int i) { return adoptR
ef(new SharedBuffer(c, i)); } |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
114 mutable Vector<char> m_buffer; | 114 mutable Vector<char> m_buffer; |
115 mutable Vector<char*> m_segments; | 115 mutable Vector<char*> m_segments; |
116 mutable OwnPtr<PurgeableBuffer> m_purgeableBuffer; | 116 mutable OwnPtr<PurgeableBuffer> m_purgeableBuffer; |
117 }; | 117 }; |
118 | 118 |
119 PassRefPtr<SharedBuffer> utf8Buffer(const String&); | 119 PassRefPtr<SharedBuffer> utf8Buffer(const String&); |
120 | 120 |
121 } // namespace WebCore | 121 } // namespace WebCore |
122 | 122 |
123 #endif // SharedBuffer_h | 123 #endif // SharedBuffer_h |
OLD | NEW |