Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(615)

Side by Side Diff: net/disk_cache/memory/mem_entry_impl.h

Issue 1535363003: Switch to standard integer types in net/. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: stddef Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « net/disk_cache/memory/mem_backend_impl.cc ('k') | net/disk_cache/memory/mem_entry_impl.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef NET_DISK_CACHE_MEMORY_MEM_ENTRY_IMPL_H_ 5 #ifndef NET_DISK_CACHE_MEMORY_MEM_ENTRY_IMPL_H_
6 #define NET_DISK_CACHE_MEMORY_MEM_ENTRY_IMPL_H_ 6 #define NET_DISK_CACHE_MEMORY_MEM_ENTRY_IMPL_H_
7 7
8 #include <stdint.h>
9
8 #include "base/containers/hash_tables.h" 10 #include "base/containers/hash_tables.h"
11 #include "base/macros.h"
9 #include "base/memory/scoped_ptr.h" 12 #include "base/memory/scoped_ptr.h"
10 #include "net/disk_cache/disk_cache.h" 13 #include "net/disk_cache/disk_cache.h"
11 #include "net/log/net_log.h" 14 #include "net/log/net_log.h"
12 15
13 namespace disk_cache { 16 namespace disk_cache {
14 17
15 class MemBackendImpl; 18 class MemBackendImpl;
16 19
17 // This class implements the Entry interface for the memory-only cache. An 20 // This class implements the Entry interface for the memory-only cache. An
18 // object of this class represents a single entry on the cache. We use two 21 // object of this class represents a single entry on the cache. We use two
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
84 const net::BoundNetLog& net_log() { 87 const net::BoundNetLog& net_log() {
85 return net_log_; 88 return net_log_;
86 } 89 }
87 90
88 // Entry interface. 91 // Entry interface.
89 void Doom() override; 92 void Doom() override;
90 void Close() override; 93 void Close() override;
91 std::string GetKey() const override; 94 std::string GetKey() const override;
92 base::Time GetLastUsed() const override; 95 base::Time GetLastUsed() const override;
93 base::Time GetLastModified() const override; 96 base::Time GetLastModified() const override;
94 int32 GetDataSize(int index) const override; 97 int32_t GetDataSize(int index) const override;
95 int ReadData(int index, 98 int ReadData(int index,
96 int offset, 99 int offset,
97 IOBuffer* buf, 100 IOBuffer* buf,
98 int buf_len, 101 int buf_len,
99 const CompletionCallback& callback) override; 102 const CompletionCallback& callback) override;
100 int WriteData(int index, 103 int WriteData(int index,
101 int offset, 104 int offset,
102 IOBuffer* buf, 105 IOBuffer* buf,
103 int buf_len, 106 int buf_len,
104 const CompletionCallback& callback, 107 const CompletionCallback& callback,
105 bool truncate) override; 108 bool truncate) override;
106 int ReadSparseData(int64 offset, 109 int ReadSparseData(int64_t offset,
107 IOBuffer* buf, 110 IOBuffer* buf,
108 int buf_len, 111 int buf_len,
109 const CompletionCallback& callback) override; 112 const CompletionCallback& callback) override;
110 int WriteSparseData(int64 offset, 113 int WriteSparseData(int64_t offset,
111 IOBuffer* buf, 114 IOBuffer* buf,
112 int buf_len, 115 int buf_len,
113 const CompletionCallback& callback) override; 116 const CompletionCallback& callback) override;
114 int GetAvailableRange(int64 offset, 117 int GetAvailableRange(int64_t offset,
115 int len, 118 int len,
116 int64* start, 119 int64_t* start,
117 const CompletionCallback& callback) override; 120 const CompletionCallback& callback) override;
118 bool CouldBeSparse() const override; 121 bool CouldBeSparse() const override;
119 void CancelSparseIO() override {} 122 void CancelSparseIO() override {}
120 int ReadyForSparseIO(const CompletionCallback& callback) override; 123 int ReadyForSparseIO(const CompletionCallback& callback) override;
121 124
122 private: 125 private:
123 typedef base::hash_map<int, MemEntryImpl*> EntryMap; 126 typedef base::hash_map<int, MemEntryImpl*> EntryMap;
124 127
125 enum { 128 enum {
126 NUM_STREAMS = 3 129 NUM_STREAMS = 3
127 }; 130 };
128 131
129 ~MemEntryImpl() override; 132 ~MemEntryImpl() override;
130 133
131 // Do all the work for corresponding public functions. Implemented as 134 // Do all the work for corresponding public functions. Implemented as
132 // separate functions to make logging of results simpler. 135 // separate functions to make logging of results simpler.
133 int InternalReadData(int index, int offset, IOBuffer* buf, int buf_len); 136 int InternalReadData(int index, int offset, IOBuffer* buf, int buf_len);
134 int InternalWriteData(int index, int offset, IOBuffer* buf, int buf_len, 137 int InternalWriteData(int index, int offset, IOBuffer* buf, int buf_len,
135 bool truncate); 138 bool truncate);
136 int InternalReadSparseData(int64 offset, IOBuffer* buf, int buf_len); 139 int InternalReadSparseData(int64_t offset, IOBuffer* buf, int buf_len);
137 int InternalWriteSparseData(int64 offset, IOBuffer* buf, int buf_len); 140 int InternalWriteSparseData(int64_t offset, IOBuffer* buf, int buf_len);
138 141
139 // Old Entry interface. 142 // Old Entry interface.
140 int GetAvailableRange(int64 offset, int len, int64* start); 143 int GetAvailableRange(int64_t offset, int len, int64_t* start);
141 144
142 // Grows and cleans up the data buffer. 145 // Grows and cleans up the data buffer.
143 void PrepareTarget(int index, int offset, int buf_len); 146 void PrepareTarget(int index, int offset, int buf_len);
144 147
145 // Updates ranking information. 148 // Updates ranking information.
146 void UpdateRank(bool modified); 149 void UpdateRank(bool modified);
147 150
148 // Initializes the children map and sparse info. This method is only called 151 // Initializes the children map and sparse info. This method is only called
149 // on a parent entry. 152 // on a parent entry.
150 bool InitSparseInfo(); 153 bool InitSparseInfo();
151 154
152 // Performs the initialization of a MemEntryImpl as a child entry. 155 // Performs the initialization of a MemEntryImpl as a child entry.
153 // |parent| is the pointer to the parent entry. |child_id| is the ID of 156 // |parent| is the pointer to the parent entry. |child_id| is the ID of
154 // the new child. 157 // the new child.
155 bool InitChildEntry(MemEntryImpl* parent, int child_id, net::NetLog* net_log); 158 bool InitChildEntry(MemEntryImpl* parent, int child_id, net::NetLog* net_log);
156 159
157 // Returns an entry responsible for |offset|. The returned entry can be a 160 // Returns an entry responsible for |offset|. The returned entry can be a
158 // child entry or this entry itself if |offset| points to the first range. 161 // child entry or this entry itself if |offset| points to the first range.
159 // If such entry does not exist and |create| is true, a new child entry is 162 // If such entry does not exist and |create| is true, a new child entry is
160 // created. 163 // created.
161 MemEntryImpl* OpenChild(int64 offset, bool create); 164 MemEntryImpl* OpenChild(int64_t offset, bool create);
162 165
163 // Finds the first child located within the range [|offset|, |offset + len|). 166 // Finds the first child located within the range [|offset|, |offset + len|).
164 // Returns the number of bytes ahead of |offset| to reach the first available 167 // Returns the number of bytes ahead of |offset| to reach the first available
165 // bytes in the entry. The first child found is output to |child|. 168 // bytes in the entry. The first child found is output to |child|.
166 int FindNextChild(int64 offset, int len, MemEntryImpl** child); 169 int FindNextChild(int64_t offset, int len, MemEntryImpl** child);
167 170
168 // Removes child indexed by |child_id| from the children map. 171 // Removes child indexed by |child_id| from the children map.
169 void DetachChild(int child_id); 172 void DetachChild(int child_id);
170 173
171 std::string key_; 174 std::string key_;
172 std::vector<char> data_[NUM_STREAMS]; // User data. 175 std::vector<char> data_[NUM_STREAMS]; // User data.
173 int32 data_size_[NUM_STREAMS]; 176 int32_t data_size_[NUM_STREAMS];
174 int ref_count_; 177 int ref_count_;
175 178
176 int child_id_; // The ID of a child entry. 179 int child_id_; // The ID of a child entry.
177 int child_first_pos_; // The position of the first byte in a child 180 int child_first_pos_; // The position of the first byte in a child
178 // entry. 181 // entry.
179 MemEntryImpl* next_; // Pointers for the LRU list. 182 MemEntryImpl* next_; // Pointers for the LRU list.
180 MemEntryImpl* prev_; 183 MemEntryImpl* prev_;
181 MemEntryImpl* parent_; // Pointer to the parent entry. 184 MemEntryImpl* parent_; // Pointer to the parent entry.
182 scoped_ptr<EntryMap> children_; 185 scoped_ptr<EntryMap> children_;
183 186
184 base::Time last_modified_; // LRU information. 187 base::Time last_modified_; // LRU information.
185 base::Time last_used_; 188 base::Time last_used_;
186 MemBackendImpl* backend_; // Back pointer to the cache. 189 MemBackendImpl* backend_; // Back pointer to the cache.
187 bool doomed_; // True if this entry was removed from the cache. 190 bool doomed_; // True if this entry was removed from the cache.
188 191
189 net::BoundNetLog net_log_; 192 net::BoundNetLog net_log_;
190 193
191 DISALLOW_COPY_AND_ASSIGN(MemEntryImpl); 194 DISALLOW_COPY_AND_ASSIGN(MemEntryImpl);
192 }; 195 };
193 196
194 } // namespace disk_cache 197 } // namespace disk_cache
195 198
196 #endif // NET_DISK_CACHE_MEMORY_MEM_ENTRY_IMPL_H_ 199 #endif // NET_DISK_CACHE_MEMORY_MEM_ENTRY_IMPL_H_
OLDNEW
« no previous file with comments | « net/disk_cache/memory/mem_backend_impl.cc ('k') | net/disk_cache/memory/mem_entry_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698