UFSSwapLogParser.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 1996-2023 The Squid Software Foundation and contributors
3  *
4  * Squid software is distributed under GPLv2+ license and includes
5  * contributions from numerous individuals and organizations.
6  * Please see the COPYING and CONTRIBUTORS files for details.
7  */
8 
9 #ifndef SQUID_SRC_FS_UFS_UFSSWAPLOGPARSER_H
10 #define SQUID_SRC_FS_UFS_UFSSWAPLOGPARSER_H
11 
12 class StoreSwapLogData;
13 
14 namespace Fs
15 {
16 namespace Ufs
17 {
20 {
21 public:
22  FILE *log;
25 
26  UFSSwapLogParser(FILE *fp):log(fp),log_entries(-1), record_size(0) {
27  }
28  virtual ~UFSSwapLogParser() {};
29 
30  static UFSSwapLogParser *GetUFSSwapLogParser(FILE *fp);
31 
32  virtual bool ReadRecord(StoreSwapLogData &swapData) = 0;
33  int SwapLogEntries();
34  void Close() {
35  if (log) {
36  fclose(log);
37  log = nullptr;
38  }
39  }
40 };
41 
42 } //namespace Ufs
43 } //namespace Fs
44 #endif /* SQUID_SRC_FS_UFS_UFSSWAPLOGPARSER_H */
45 
virtual bool ReadRecord(StoreSwapLogData &swapData)=0
Definition: Module.h:12
static UFSSwapLogParser * GetUFSSwapLogParser(FILE *fp)

 

Introduction

Documentation

Support

Miscellaneous