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 21 matching lines...) Expand all Loading... |
32 #include "third_party/skia/include/core/SkData.h" | 32 #include "third_party/skia/include/core/SkData.h" |
33 #include "wtf/Forward.h" | 33 #include "wtf/Forward.h" |
34 #include "wtf/OwnPtr.h" | 34 #include "wtf/OwnPtr.h" |
35 #include "wtf/RefCounted.h" | 35 #include "wtf/RefCounted.h" |
36 #include "wtf/text/WTFString.h" | 36 #include "wtf/text/WTFString.h" |
37 | 37 |
38 namespace blink { | 38 namespace blink { |
39 | 39 |
40 class PLATFORM_EXPORT SharedBuffer : public RefCounted<SharedBuffer> { | 40 class PLATFORM_EXPORT SharedBuffer : public RefCounted<SharedBuffer> { |
41 public: | 41 public: |
| 42 static const unsigned kSegmentSize = 0x1000; |
| 43 |
42 static PassRefPtr<SharedBuffer> create() { return adoptRef(new SharedBuffer)
; } | 44 static PassRefPtr<SharedBuffer> create() { return adoptRef(new SharedBuffer)
; } |
43 static PassRefPtr<SharedBuffer> create(size_t size) { return adoptRef(new Sh
aredBuffer(size)); } | 45 static PassRefPtr<SharedBuffer> create(size_t size) { return adoptRef(new Sh
aredBuffer(size)); } |
44 static PassRefPtr<SharedBuffer> create(const char* c, int i) { return adoptR
ef(new SharedBuffer(c, i)); } | 46 static PassRefPtr<SharedBuffer> create(const char* c, int i) { return adoptR
ef(new SharedBuffer(c, i)); } |
45 static PassRefPtr<SharedBuffer> create(const unsigned char* c, int i) { retu
rn adoptRef(new SharedBuffer(c, i)); } | 47 static PassRefPtr<SharedBuffer> create(const unsigned char* c, int i) { retu
rn adoptRef(new SharedBuffer(c, i)); } |
46 | 48 |
47 static PassRefPtr<SharedBuffer> createPurgeable(const char* c, unsigned size
) { return adoptRef(new SharedBuffer(c, size, PurgeableVector::Purgeable)); } | 49 static PassRefPtr<SharedBuffer> createPurgeable(const char* c, unsigned size
) { return adoptRef(new SharedBuffer(c, size, PurgeableVector::Purgeable)); } |
48 | 50 |
49 static PassRefPtr<SharedBuffer> adoptVector(Vector<char>&); | 51 static PassRefPtr<SharedBuffer> adoptVector(Vector<char>&); |
50 | 52 |
51 ~SharedBuffer(); | 53 ~SharedBuffer(); |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
111 void mergeSegmentsIntoBuffer() const; | 113 void mergeSegmentsIntoBuffer() const; |
112 | 114 |
113 unsigned m_size; | 115 unsigned m_size; |
114 mutable PurgeableVector m_buffer; | 116 mutable PurgeableVector m_buffer; |
115 mutable Vector<char*> m_segments; | 117 mutable Vector<char*> m_segments; |
116 }; | 118 }; |
117 | 119 |
118 } // namespace blink | 120 } // namespace blink |
119 | 121 |
120 #endif // SharedBuffer_h | 122 #endif // SharedBuffer_h |
OLD | NEW |