cppfs  1.2.0.5b71c2c98fb9
Cross-platform C++ file system library supporting multiple backends (Local-FS, SSH)
windows/LocalFileIterator.h
Go to the documentation of this file.
1 
2 #pragma once
3 
4 
5 #include <memory>
6 
8 
9 
10 namespace cppfs
11 {
12 
13 
14 class LocalFileSystem;
15 
16 
21 class CPPFS_API LocalFileIterator : public AbstractFileIteratorBackend
22 {
23 public:
33  LocalFileIterator(std::shared_ptr<LocalFileSystem> fs, const std::string & path);
34 
39  virtual ~LocalFileIterator();
40 
41  // Virtual AbstractFileIteratorBackend functions
42  virtual std::unique_ptr<AbstractFileIteratorBackend> clone() const override;
43  virtual AbstractFileSystem * fs() const override;
44  virtual bool valid() const override;
45  virtual std::string path() const override;
46  virtual int index() const override;
47  virtual std::string name() const override;
48  virtual void next() override;
49 
50 
51 protected:
52  void readNextEntry();
53 
54 
55 protected:
56  std::shared_ptr<LocalFileSystem> m_fs;
57  std::string m_path;
58  int m_index;
59  void * m_findHandle;
60  void * m_findData;
61 };
62 
63 
64 } // namespace cppfs
Definition: AbstractFileHandleBackend.h:14
void * m_findHandle
Search handle.
Definition: windows/LocalFileIterator.h:59
void * m_findData
Information about the current file.
Definition: windows/LocalFileIterator.h:60